signalR 未定义 - 无法在 aspnet 核心 Web 应用程序中解析 signalR
signalR is undefined - unable to resolve signalR in aspnet core web app
我不明白为什么我似乎无法在我的 aspnet 核心应用程序中解析 SignalR 客户端库。我已经包含了在 index.html 中引用的库,但是当 javascript 库没有看到引用时。
使用 VS2019 和 .net core 3.0 创建了一个默认的 React 项目https://github.com/rohitisinhk/signalRIssue
- 添加@aspnet/signalr作为客户端库并确认它在libman.json中列出
https://github.com/rohitisinhk/signalRIssue/blob/master/SignalRWebApp/libman.json
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": [
{
"provider": "unpkg",
"library": "@aspnet/signalr@1.1.4",
"destination": "lib/@aspnet/signalr/",
"files": [
"dist/browser/signalr.js",
"dist/browser/signalr.js.map",
"dist/browser/signalr.min.js",
"dist/browser/signalr.min.js.map"
]
}
]
}
在 html 文件中,我引用了 signalr.js
https://github.com/rohitisinhk/signalRIssue/blob/master/SignalRWebApp/ClientApp/public/index.html
<script src="/lib/@aspnet/signalr/dist/browser/signalr.js"></script>
但是在 javascript 文件中我似乎无法解析 signalR
https://github.com/rohitisinhk/signalRIssue/blob/master/SignalRWebApp/ClientApp/src/index.js
const signalRConst = signalR;
请注意,您正在使用 libman 管理 signalR 库,它将文件恢复到 lib/@aspnet/signalr/
,因此,npm 不了解 signalR 库。
如果你更喜欢 libman 而不是 npm,你可以将 signalR
更改为 window.signalR
const signalRConst = window.signalR;
因为您要将文件还原到 lib/@aspnet/signalr/
而不是 wwwroot/lib/@aspnet/signalr/
,也不要忘记提供文件夹 lib/**/*
[=35 中的静态文件=]
或者您可以使用 npm 来管理依赖关系:
> cd ClientApp
> npm install @aspnet/signalr --save
现在您可以通过
获得 signalR
import * as signalR from "@aspnet/signalr";
我不明白为什么我似乎无法在我的 aspnet 核心应用程序中解析 SignalR 客户端库。我已经包含了在 index.html 中引用的库,但是当 javascript 库没有看到引用时。
使用 VS2019 和 .net core 3.0 创建了一个默认的 React 项目https://github.com/rohitisinhk/signalRIssue
- 添加@aspnet/signalr作为客户端库并确认它在libman.json中列出 https://github.com/rohitisinhk/signalRIssue/blob/master/SignalRWebApp/libman.json
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": [
{
"provider": "unpkg",
"library": "@aspnet/signalr@1.1.4",
"destination": "lib/@aspnet/signalr/",
"files": [
"dist/browser/signalr.js",
"dist/browser/signalr.js.map",
"dist/browser/signalr.min.js",
"dist/browser/signalr.min.js.map"
]
}
]
}
在 html 文件中,我引用了 signalr.js https://github.com/rohitisinhk/signalRIssue/blob/master/SignalRWebApp/ClientApp/public/index.html
<script src="/lib/@aspnet/signalr/dist/browser/signalr.js"></script>
但是在 javascript 文件中我似乎无法解析 signalR
https://github.com/rohitisinhk/signalRIssue/blob/master/SignalRWebApp/ClientApp/src/index.js
const signalRConst = signalR;
请注意,您正在使用 libman 管理 signalR 库,它将文件恢复到
lib/@aspnet/signalr/
,因此,npm 不了解 signalR 库。如果你更喜欢 libman 而不是 npm,你可以将
signalR
更改为window.signalR
const signalRConst = window.signalR;
因为您要将文件还原到
[=35 中的静态文件=]lib/@aspnet/signalr/
而不是wwwroot/lib/@aspnet/signalr/
,也不要忘记提供文件夹lib/**/*
或者您可以使用 npm 来管理依赖关系:
> cd ClientApp > npm install @aspnet/signalr --save
现在您可以通过
获得signalR
import * as signalR from "@aspnet/signalr";