ReferenceError:未定义signalR

时间:2019-01-27 13:15:06

标签: javascript asp.net-core asp.net-core-signalr

当前我正在创建聊天。我想使用AspNetCore(2.2)SignalR。 我已按照https://docs.microsoft.com/en-us/aspnet/core/tutorials/signalr?view=aspnetcore-2.2&tabs=visual-studio上的说明进行操作,但现在面临以下问题: 当我在IIS中运行客户端时,会发生以下错误:

  

ReferenceError:未定义signalR [了解更多] script.js

     

匿名http://localhost:20610/js/script.js

我在网上搜索后发现必须在NodeJS中使用     const signalR = require("@aspnet/signalr"); 但就我而言,我使用的是纯JavaScript,所以我认为不需要添加此行。我说的对吗?

这是我的html和js代码的开头:

<head>
    <title>abc</title>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <link rel="stylesheet" href="style/style.css">
    <script src="js/jquery-3.3.1.min.js"></script>
    <script src="js/signalr.min.js"></script>
    <script src="js/script.js"></script>
</head>
var connection = new signalR.HubConnectionBuilder().withUrl(base).build();

有什么建议可以使它正常工作吗?

谢谢:)

2 个答案:

答案 0 :(得分:2)

SignalR未定义,因此未找到。尽管您使用普通的JavaScript进行编程,但仍然必须包含SignalR。另外,请确保该路径实际上通向SignalR。

答案 1 :(得分:0)

我迟了几个月(新来的也不能发表评论),但是,我遇到了同样的问题。在这里没有看到任何回应,我想添加一个。要清除错误,请移动您的 <script src="~/lib/signalr/dist/browser/signalr.js"></script> 到Pages / Shared_Layout.cshtml文件,然后将其放置在页脚下方。

这也应该删除控制台中的警告。