Razor Core安装jquery.unobtrusive.ajax丢失的js文件

时间:2019-07-12 18:12:34

标签: c# razor .net-core nuget

我知道我肯定会缺少一些显而易见的东西,但是js文件在哪里? 我通过nuget安装该软件包,但是当我检查js文件以将其包含在我的页面中时,在任何地方都找不到它们。

我该怎么办?

1 个答案:

答案 0 :(得分:1)

这些年来,获取Web前端资源(html,css,js)的方法逐渐失宠,我希望这在很大程度上是由于缺乏灵活性(使用该软件包的开发人员无法确定文件的位置,该软件包作者)。我感觉到,大量的ASP.NET开发人员转向使用非.NET开发人员用于这些文件的相同工具,主要是npm。默认情况下,您可以使用npm在ASP.NET Core的angular和react模板中看到它。现在,webapp和mvc模板仅在其模板中提供了一些版本的bootstrap和jquery,而没有工具支持来更新它们,只是有一条评论说:

  

/ *请参阅https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification上的文档   有关配置此项目以捆绑和缩小静态Web资产的详细信息。 * /

由于使用npm的生态系统是不平凡的(不是说很难,只是不平凡),因此ASP.NET团队创建了一个名为LibMan的简单库管理器。

因此,我建议您使用LibMan来获取jquery以及所需的任何其他前端资源,或者根据需要降低npm / webpack兔子洞的深度,您可以使其变得简单或复杂取决于您想要的功能。或者只是从jquery的网站下载文件,然后将其复制到您的仓库中。

NuGet软件包对您不起作用的原因是,该软件包仅包含content文件夹,但是NuGet在migrating from packages.config to packagereference上的文档特别指出了"content" assets are no longer available。软件包作者可以使用contentFiles使软件包与使用PackageReference的项目兼容,但是软件包使用者对此无能为力。

相关问题