Signalr 信号器-从多个局部视图连接寄存器?

Signalr 信号器-从多个局部视图连接寄存器?,signalr,Signalr,我在一个页面中有多个局部视图,其中我使用了signar 为了正确执行,所有局部视图都需要使用ID向中心注册 我使用以下方法实现了此功能: $.connection.hub.start(function () { <hubname>.register(<id>); }); $.connection.hub.start(函数(){.register();}); 当页面上只有一个局部视图时,它将按设计工作。但一旦有2个或多个寄存器命令,则只执行其中一个寄存器命令。因此,只有

我在一个页面中有多个局部视图,其中我使用了signar

为了正确执行,所有局部视图都需要使用ID向中心注册

我使用以下方法实现了此功能:

$.connection.hub.start(function () { <hubname>.register(<id>); });
$.connection.hub.start(函数(){.register();});
当页面上只有一个局部视图时,它将按设计工作。但一旦有2个或多个寄存器命令,则只执行其中一个寄存器命令。因此,只有一个局部视图起作用


如果我能保持局部视图的独立性,我会更愿意这样做。

dfowler回答了我关于JabbR的问题:

// --- outside of the user controls, e.g. on the container page ---
$(function() {
  window.hubReady = $.connection.hub.start();
});

// --- in your other pages ---
$(function() {
    window.hubReady.done(function() {
        // call hub method
    });
});

您不知道
$(function()
的顺序,因此只有在开始执行
window.hubReady=$.connection.hub.start();
时,此操作才有效