0

我认为这应该是不费吹灰之力的,但它已经让我头疼了好几个小时。我有一个简单的 Razor 类库 (RCL),其中包含一个包含一些 JavaScript 的页面。

@page
@*...*@
<h1>Test Page</h1>

@section Scripts {
    <script type="text/javascript" src="~/lib/somejs.js"></script>
    <script type="text/javascript">
        console.log("log something"); // works
        let something = new SomeJS("hello World");
    </script>
}

我还有一个_Layout.cshtml包含@RenderSection("scripts", required: false)以允许有条件地包含script-tag。

包含给定的脚本,但尽管引用~/lib/somejs.js了以下错误,但仍发生以下错误:

 https://localhost:44385/lib/somejs.js net::ERR_ABORTED 404

所需的文件位于 RCL 的wwwroot/lib文件夹中。在我看来,给定的路径是错误的,因为它期望文件位于实际 Web 项目中不存在的文件夹而不是 RCL 中。

如何从 RCL 中正确解析引用?理想情况下,使用它的项目不必费心手动包含它们。

编辑:即使插入 Visual Studio 建议的硬编码路径也不能解决问题,例如src="../../wwwroot/lib/some.js".

4

0 回答 0