所以我们正在建立一个带插件的网站,我想知道我是否可以在插件文件夹中搜索任何js文件,并将它们添加到 BundleConfig.cs 类中的所有包中
我考虑过将所有要捆绑的文件命名为Plugin.pluginName.js
,然后搜索所有文件,查找与“ Plugin。 .js *”相匹配的文件。 ,但我不确定如何做到这一点。
如何创建插件包?
答案 0 :(得分:2)
根据命名约定命名要捆绑的所有文件的想法是一个很好的约定。
将脚本包添加到包集合
SELECT @@VERSION AS 'SQL Server Version'
Microsoft SQL Azure (RTM) - 12.0.2000.8 Jun 11 2017 11:55:10 Copyright
(C) 2017 Microsoft Corporation. All rights reserved.
如果您想放弃命名约定,也可以在plugins文件夹中搜索任何js文件
public static void RegisterBundles(BundleCollection bundles) {
bundles.Add(new ScriptBundle("~/bundles/plugins").Include(
"~/Scripts/*.Plugin.js")); //{pluginName}.Plugin.js convention
//...other bundles
}
在视图中引用使用注册名称
的包public static void RegisterBundles(BundleCollection bundles) {
bundles.Add(new ScriptBundle("~/bundles/plugins")
.IncludeDirectory("~/Plugins", "*.Plugin.js", true));
//above recursively search subdirectories of directoryVirtualPath.
//...other bundles
}
答案 1 :(得分:-1)
什么是捆绑?
Bundling是ASP.NET 4.5中的一项新功能,可以轻松地将多个文件合并或捆绑到一个文件中。 您可以创建CSS,JavaScript和其他捆绑包。更少的文件意味着更少的HTTP请求,并且可以提高首页加载性能。
如何启用捆绑?
通过在Web.config文件中的编译元素中设置debug属性的值来启用或禁用捆绑。在以下XML中,debug设置为true,因此禁用了捆绑和缩小。 XML
<system.web>
<compilation debug="true" />
</system.web>
要启用捆绑和缩小,请将调试值设置为“false”。
您可以使用BundleTable类上的EnableOptimizations属性覆盖Web.config设置。 以下代码启用了捆绑和缩小功能,并覆盖了Web.config文件中的任何设置。
示例强>
public static void RegisterBundles(BundleCollection bundles) {
bundles.Add(new ScriptBundle("~/bundles/AnyName").Include(
"~/Scripts/Plugins/*.js")); // this will all the files in the plugins folder with .js extension
//you can specify files separately if dont want to use wildcards
BundleTable.EnableOptimizations = true;
}
重要说明: Include方法中指定的虚拟路径和IncludeDirectory方法中的搜索模式可以在最后一个路径中接受一个“*”通配符作为前缀或后缀片段强>
由于
KARTHIK