ASP.NET Razor Pages JavaScript 文件返回未定义的错误
Posted
技术标签:
【中文标题】ASP.NET Razor Pages JavaScript 文件返回未定义的错误【英文标题】:ASP.NET Razor Pages JavaScript file returns undefined error 【发布时间】:2019-06-12 06:30:22 【问题描述】:这个有点棘手,但这里是:
我从正在从 Wordpress 转移到 ASP.NET Razor Pages 的网站上下载了一些文件。在原始文件中有一个“assets”文件夹、一个“lib”文件夹(包含字体文件夹以及 css 和 js 文件)以及 index.html 文件。
当我在 Chrome 浏览器中打开文件并运行索引文件时,网页运行正常(整个页面响应速度非常快,并且是用 javascript 完成的,因此 .js 文件非常重要)。 Here's a look at the current page for your reference
当我切换到我的 ASP.NET Razor Pages 项目时,文件运行,但我收到以下错误:
Uncaught ReferenceError: playerjs is not defined
我进入代码检查它,但我似乎无法找到它实际上有什么问题。整个文件中只有一次 playerjs 调用。 Here's the link to the .js main file if you're interested.
我的问题:将常规 .html 文件及其随附的 .js 文件从 Wordpress 站点移动到 ASP.NET Core 站点时是否有协议?
我想知道这是否是因为我正在使用 .CSHTML 文件及其随附的 .CSHTML.CS 文件。这很令人困惑。
对此的任何帮助将不胜感激!
【问题讨论】:
看来你没有正确加载js文件。您能告诉我们您是如何在 index.html 中引用 js 的吗? 我正要发布答案。您对文件未正确加载是正确的。 【参考方案1】:正如@itminus 指出的那样。 js 文件没有正确加载,因为我使用的是默认布局部分页面。我假设 js 文件正在与其他 js 文件竞争。我发现移动您的传统 .html 文件及其相应文件就像复制和粘贴一样简单,但您必须正确操作。
这是怎么做的:
-
在您的 Pages 文件夹中,创建一个用于存放 .cshtml 文件的新文件夹
在该文件夹中,添加一个新的剃须刀页面,但确保取消选中布局选项
复制 .html 页面中的代码并将其粘贴到 .cshtml 文件中
确保将 js 和 css 文件放在 wwwroot 文件夹中
还要确保正确指向链接和脚本
如果您指向 js 文件或脚本中的某些内容,请确保获取根 url 并将其指向正确的文件
我希望这对那些不考虑布局页面妨碍的人有所帮助。
感谢所有愿意提供帮助的人!
【讨论】:
以上是关于ASP.NET Razor Pages JavaScript 文件返回未定义的错误的主要内容,如果未能解决你的问题,请参考以下文章
结合 Razor Pages 和 ApiControllers 的应用程序中的 Asp.net 核心异常处理
部分视图中的模型为空 - asp.net core razor pages
ASP.NET Razor Pages JavaScript 文件返回未定义的错误