如何在ASP.NET Core中使用jQuery库?

时间:2019-03-04 17:02:40

标签: jquery asp.net jquery-ui asp.net-core jquery-plugins

我正在使用ASP.NET Core 2.2开发网站,并且主要使用剃须刀页面。

我试图制作一个树表,并找到了一个非常适合的jQuery插件,但是我不确定如何以一种好的方式使用它。

https://www.jqueryscript.net/table/Tree-Table-Plugin-Bootstrap-GTreeTable.html

这是我要使用的插件,我不知道从哪里开始。

我们也在使用区域,所以我想这会使路径有些不同? 我是否只将脚本放在根文件夹中?

1 个答案:

答案 0 :(得分:0)

通常,您需要引用静态文件,例如脚本,只需要进入wwwroot目录即可。发布后,它将映射到您的文档根目录,因此您在引用静态资源(即:wwwroot)时基本上会忽略~/lib/jquery/jquery.js部分。

按照惯例,“库”文件(您自己没有写的东西)进入wwwroot/lib目录。这样,您可以从字面上下载插件并放置诸如wwwroot/lib/jquery-treeview之类的地方。然后,您只需要根据该库的文档在视图中添加适当的静态引用(即link / script标签)即可。

但是,以这种方式手动完成后,您有责任使它保持最新状态并可供您自己使用。通常也要在源代码管理中忽略wwwroot/lib,因为这些库通常是通过其他方式引入的,并且您不想将第三方代码提交到自己的存储库中。这就造成了上述手动方法的问题。

总之,您需要使用某种程序包管理工具将第三方库插入wwwroot/lib中。最初是bower,Visual Studio内置了对GUI和所有内容的支持。但是,后来bower结束了开发。此后,Microsoft通过添加称为“ LibMan”(字面意思是“ Library Manager”的缩写)进行响应。如果需要,您当然可以使用它,它在许多方面都缺乏。其主要缺点之一是它依赖cdnjs作为库源。如果该库恰好托管在cdnjs上,那很好,但是如果您不需要的库,那么您就走运了,回到了如何正确管理该库以及其他任何问题的问题。不支持的库。

更好的方法是使用npm软件包管理器,但这需要更多的精力。最大的障碍是将节点程序包添加到臭名昭著的node_modules目录中,默认情况下不提供该目录。有些人可能建议您也将此目录也添加到静态文件中间件中,但这是一个错误。该目录不适合提供,也不应该提供。

相反,您将需要gruntgulpwebpack之类的东西,甚至只是简单的npm scripts。使用其他任何方法,您都可以创建“构建”脚本,这些脚本可用于将库从node_modules选择性地移动到wwwroot/lib目录,仅包括选择文件。

如何进行所有设置取决于您决定使用哪种工具,因此远远超出了Stack Overflow的范围。 Microsoft有一些基本文档(gruntgulp),但除此之外,Google是您的朋友。