簡體   English   中英

將 javascript 鏈接為內容在 visual studio 中不起作用

[英]Linking javascript as content doesn't work in visual studio

我有兩個項目(MAUI 和 ASP.NET)。 在這兩種情況下,我都使用 Blazor,因此我可以為本機和 web 應用程序編寫共享代碼。 到目前為止,一切正常,我沒有重復的代碼。

現在我有我正在實施的第一個 JavaScript function 現在有問題。 我在 wwwroot/js/Scripts.js 的本機項目 (MAUI) 中實現了 JS function。 然后我可以從它工作的本機應用程序(Windows 或 Android)調用 function!

現在,對於 Webproject,我還在 wwwroot 下創建了 js 目錄,並從本機 MAUI 項目鏈接了 javascript 文件。 作為構建操作,我設置了內容並將其設置為“始終復制”。 這似乎不起作用,javascript function 沒有在Webproject 中調用,但沒有觸發錯誤。

但是如果我不鏈接 javascript 文件而是導入(或創建新的 Script.js)它在 webproject 中工作並且調用 JS function!

我已經嘗試了所有可能的構建操作,但似乎沒有一個能夠檢測到鏈接的 JS 文件!

有誰知道如何使我在一個項目中只有 JS 文件,然后將它鏈接(而不是復制)到第二個項目?

謝謝

不要將應用程序項目用於共享內容或組件 - 它們應該在 RazorClassLibrary 中,並在兩個應用程序項目中引用。

as.netcore 不支持鏈接的內容文件。

...我終於使用了 RCL,但僅適用於 JS,並且有效。 現在正確包含腳本很重要,否則你會搜索很長時間:

<script src="_content/CALCrcl/js/Scripts.js"></script>

我曾短暫地考慮過將所有 Razor 組件外包給 RCL(即不通過從 MAUI 鏈接到 AS.NET 使用這些組件),但起初看起來這比我目前正在做的更費力。

下頁介紹如何在MAUI原生和web之間使用RCL:

https://learn.microsoft.com/en-us/as.net/core/blazor/hybrid/class-libraries?view=as.netcore-7.0

https://learn.microsoft.com/en-us/as.net/core/blazor/components/class-libraries?view=as.netcore-7.0&tabs=visual-studio

幾次嘗試后,我決定繼續使用舊版本,尤其是因為代碼隱藏和命名空間,因為從 MS 文檔中不清楚如何通過 RCL 解決問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM