如何在示例 MathJax 上正确使用 ASP.Net Core 项目中的 JavaScript NuGet 库?

V. *_*lov 3 javascript mathjax nuget asp.net-core

我从包管理器在 ASP.Net Core 上为我的网站安装了 MathJax 库。我在 NuGet 依赖项中看到'MathJax (2.7.0)'

我的依赖项的图像

但这就是全部了。当我在项目中看到wwwroot\lib目录时,我没有看到'MathJax'文件夹或类似的内容:

我的前端库的图像

但是当我需要使用 MathJax 时,我需要在我的 html 页面中编写类似的内容:

<script type="text/javascript" async src="~lib/MathJax/MathJax.js?config=TeX-AMS_HTML-full"></script>

我无法直接在 中复制 NuGet 库wwwroot\lib,因为我不想在 git 存储库中添加大量文件外部项目(> 36 Mb,> 1500 个文件)。另外,为什么要使用 NuGet 呢?另外,我无法手动添加 MathJax NuGet 库的现有项目(菜单Add -> Existing Item...),因为它们很多,并且绝对路径在另一台电脑上不会正确。

如何在 NuGet 包中正确获取 MathJax 库的链接?

Chr*_*att 6

JavaScript/CSS 库 NuGet 包不适用于 Core。它们适用于 MVC。ASP.NET Core 对静态文件和客户端库的处理方法与 ASP.NET MVC 完全不同。

对于 ASP.NET Core 站点,您需要使用 LibMan 或 npm 来获取客户端库。LibMan 更容易,但也非常幼稚和有限。特别是,它只支持 cdnjs 上的库。虽然那里有很多内容,但并不全面,而且有一些库是可用的。我不确定你的特定图书馆是否是。

然而,考虑到您几乎不可避免地最终需要一些无法通过 LibMan 获得的东西,然后您将被迫使用 npm,您不妨只使用 npm 并习惯它。学习曲线更多,因为您还需要使用 Webpack、Gulp、Grunt 等创建构建任务。npm 包位于一个node_modules文件夹中,不应直接提供该文件夹。至少,您需要使用 Webpack、Gulp 等将 npm 包的 dist/build(即您将引用的实际 JS/CSS 文件)复制到您的wwwroot/lib目录中。网上有很多关于如何设置的指南。只需做一些研究即可。


小智 5

在VS2019中,进入该wwwroot/lib目录,右键单击并选择Add -> Client-Side Library。然后包含您的文件。