【问题标题】:SignalR's $.hubConnection() not workingSignalR 的 $.hubConnection() 不工作
【发布时间】:2012-09-21 23:49:46
【问题描述】:

我正在尝试在基于an example over here 的 ASP.NET MVC 4 应用程序中实现聊天模块。由于这个没有使用最新的 SignalR 版本(0.5.3),我不得不调整代码以使其工作。

问题是,我什至无法让 hubConnection 工作。我遇到了一个 JS 错误,上面写着:

Uncaught TypeError: Object function ( selector, context ) {
        // The jQuery object is actually just the init constructor 'enhanced'
        return new jQuery.fn.init( selector, context, rootjQuery );
    } has no method 'hubConnection'

我不确定为什么没有 hubConnection 方法。我有最新的 jQuery 和 SignalR 库,并且我只是遵循了 SignalR 0.5.3 发行说明here。这是我的视图中生成的代码的 sn-p:

<script src="/Scripts/jquery-1.8.2.js"></script>
<script src="/Scripts/jquery.signalR-0.5.3.js"></script>
<script type="text/javascript" src="/signalr/hubs"></script>
<script type="text/javascript">
    $(function () {
        var connection = $.hubConnection();
        var chatHubClient = connection.createProxy("chatHub");

        connection.start(function () {
            chatHubClient.join('TEST');
        });
    });
</script>

我希望有人能指出我正确的方向。谢谢。

【问题讨论】:

    标签: jquery asp.net-mvc signalr


    【解决方案1】:

    我想您已经按照 0.5.3 公告中的演练进行了操作? http://blogs.msdn.com/b/webdev/archive/2012/08/22/announcing-the-release-of-signalr-0-5-3.aspx

    确保您可以在浏览器中同时打开 /Scripts/jquery.signalR-0.5.3.js 和 /signalr/hubs。

    【讨论】:

    • 是的,我跟着那个。我也可以在浏览器中打开这两个脚本文件。
    • @Marco 两个脚本顶部的版本号是否正确?
    • 是的。如果我可以补充的话,它们都是最新的。
    • 我设法设置了示例,直到出现构建错误的 Join 方法。然而,当运行它比你管理的更远。您没有在任何地方调用 jquery noConflict 吗?你还有其他的 javascript 库吗?
    • 现在我知道我哪里出错了。即使我已经在我的聊天页面中导入了 jQuery,但我忘记了我之前在 _Layout.cshtml 的底部添加了 jQuery(以便将其导入到所有页面中)。第二个导入使 SignalR 对 jQuery 对象所做的任何事情都无效。谢谢你的帮助,贝蒂!
    猜你喜欢
    • 2017-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-06
    • 1970-01-01
    • 2017-11-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多