【问题标题】:SignalR is not loaded. Please ensure jquery.sigalR-x.js is referenced before ~/signalr/jsSignalR 未加载。请确保 jquery.sigalR-x.js 在 ~/signalr/js 之前被引用
【发布时间】:2023-04-07 08:27:01
【问题描述】:

我在我的页面中动态引用了以下两个库。当我浏览我的应用程序时,Chrome 浏览器中没有出现下面提到的错误。但在 Internet Explorer 中会出现错误。

var signalRLibrary = document.createElement('script');
signalRLibrary.type = "text/javascript";
signalRLibrary.src = 'jquery.signalR-2.1.2.min.js';
document.getElementsByTagName('head')[0].appendChild(signalRLibrary);

var signlaRHub = document.createElement('script');
signlaRHub.type = "text/javascript";
signlaRHub.src = "~/signalr/hubs";
document.getElementsByTagName('head')[0].appendChild(signlaRHub);

在页面加载期间,由于未加载 SignalR,因此出现以下错误。请确保 jquery.signalR-x.js 在 ~/signalr/js 之前被引用。

if (typeof ($.signalR) !== "function") {
        throw new Error("SignalR: SignalR is not loaded. Please ensure jquery.signalR-x.js is referenced before ~/signalr/js.");
}

【问题讨论】:

  • 如果您的App_Start/BundleConfig.cs 中有~/signalr/js 字段,则可能出现此错误。请检查并做出相应的更改。
  • @EmreBolat,我的项目不是使用 MVC 开发的。我在 HTML 页面中引用了上述库。上面的代码在 Chrome 浏览器中运行良好。不能在 IE 中工作。

标签: asp.net signalr signalr-hub


【解决方案1】:

JavaScript 客户端需要引用 jQuery 和 SignalR 核心 JavaScript 文件。 jQuery 版本必须是 1.6.4 或更高版本 版本,例如 1.7.2、1.8.2 或 1.9.1。如果您决定使用 生成的代理,您还需要对生成的 SignalR 的引用 代理 JavaScript 文件。下面的例子显示了引用的内容 可能看起来像使用生成的代理的 HTML 页面。

<script src="Scripts/jquery-1.10.2.min.js"></script>
<script src="Scripts/jquery.signalR-2.1.0.min.js"></script>
<script src="signalr/hubs"></script>

这些引用必须按此顺序包含:jQuery 优先,SignalR 之后是核心,最后是 SignalR 代理。
- 来自ASP.NET SignalR Hubs API Guide - JavaScript Client

您的问题是,不知何故,您加载引用的顺序是错误的。

【讨论】:

    【解决方案2】:

    100% working if you want to debug on locally. 如何在本地调试 SingalR?

    回答:在cshtml页面上拖拽js jquery.signalR-2.4.2.js这种方式。不要用min.js调试,用这个版本本地调试。

    &lt;script src="~/Scripts/jquery.signalR-2.4.2.js"&gt;&lt;/script&gt;
    &lt;script src="@Url.Content("http://localhost:57305/signalr/hubs")"&gt;&lt;/script&gt;

    从 cdn 下载所有支持的 Signal R js。 https://www.cdnpkg.com/signalr.js/file/jquery.signalR.min.js/

    【讨论】:

      猜你喜欢
      • 2017-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-11
      • 1970-01-01
      • 2018-10-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多