Есть ли способ передать функцию обратного вызова для SignalR? Сейчас у меня на site.js
messageHub.client.sendProgress = function (progress) {
//doSomething with progress
}
То, что я хотел бы иметь, это
messageHub.client.sendProgress = function (progress,callback) {
callback(progress);
}
Это позволило бы мне определить различные функции обратного вызова с веб-страниц для одного и того же метода signalR. Прямо сейчас я делаю это хакерским способом, определяя функцию на своей веб-странице.
function fnSendProgress(progress) //define this for site.js.
{
//do something here
}
а затем в site.js
, вызвав его
messageHub.client.sendProgress = function (progress) {
debugger;
//have a definition of a function called fnSendProgress(progress)
//if found it will call it else call default
if (typeof fnSendProgress == 'function') {
fnSendProgress(progress);
}
else {
//do something at site.js level
}
};
Это работает, но мне было интересно, есть ли более чистый метод. Любая помощь очень ценится.