目前我正在開發一個 .NET 核心 MVC 應用程式,該應用程式與紗線連接以添加包。到目前為止,我已經添加了這樣的 Signalr 包:
yarn add @microsoft/signalr
將包添加到 /wwwroot/lib/@microsoft/signalr/etc..
但是,當我嘗試將包包含在 Web 應用程式中時,它會卡住。我包括它是這樣的:
<script src="lib/@microsoft/signalr/dist/browser/signalr.js"></script>
也<script src="lib/microsoft/signalr/dist/browser/signalr.js"></script>不起作用。
有誰知道如何解決這個問題?我們不想切換到 libman,而是更愿意繼續使用 Yarn 的包。
干杯!
uj5u.com熱心網友回復:
首先,您需要知道Yarn 默認不會將客戶端軟體包安裝到您的 wwwroot 中。
它全域下載%UserProfile%\AppData\Local\Yarn\檔案夾中的包。
在我的電腦中,它存在于C:\Users\username\AppData\Local\Yarn\Cache\v6:

整個作業步驟
確保你已經安裝了 note.js,然后運行以下命令來安裝 Yarn:
npm install --global yarn運行命令添加信號包:
yarn add @microsoft/signalr在其中找到信號包(
@microsoft檔案夾)%LOCALAPPDATA%\Yarn\并復制整個@microsoft檔案夾:
將整個
@microsoft檔案夾粘貼到您的專案wwwroot/lib檔案夾中:
然后添加如下 js 參考:
<script src="@Url.Content("/lib/@microsoft/signalr/dist/browser/signalr.js")"></script>
其實我建議你可以使用 Libman,它可以直接下載到你的 wwwroot 檔案夾。
uj5u.com熱心網友回復:
你不能在你的 Webclient 中使用這樣的包。
您希望從客戶端訪問的所有內容都必須由您的服務器提供。
提供包裹有點棘手,我建議使用捆綁器。
例如,使用Webpack,您可以準備要服務的客戶端資源。
在實踐中,這看起來像這樣:
Webpack 配置為捆綁您的客戶端 Javascript 并將其放入 <project-root>/assets
您的服務器配置為為從<project-root>/assets目錄到/assets路由的每個檔案提供服務。
在您的客戶端腳本檔案中,您可以像這樣匯入庫模塊:
import {<your needed parts>} from '@microsoft/signalr';
最后,您的 html 頁面會像這樣加載您的客戶端腳本:
<script src="/assets/bundle.js" type="module"></script>
這是一個簡化的示例,我建議您閱讀 Webpack 檔案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/400968.html
標籤:javascript asp.net-mvc asp.net-core-mvc 纱线包
上一篇:谷歌地圖反應中的邊界是什么意思?
