我正在使用ASP.Net MVC 4应用程序,并使用Bundling和minifiction来渲染样式和脚本文件.
我有一个脚本文件(文件A)调用函数在另一个文件(文件B),当我使用
@ Scripts.Render()方法,它在文件B之前渲染文件A的链接标记,从而触发错误,脚本无法正常工作.
有没有办法强制@ Script.Render()以特定的顺序呈现链接标记,而不需要为每个文件分别使用捆绑?
编辑
我使用IncludeDirectory方法将所有脚本文件包含在该文件夹中
public class BundleConfig { public static void RegisterBundles(BundleCollection bundles) { bundles.Add(new ScriptBundle("~/bundles/js").IncludeDirectory( "~/Scripts/js","*.js")); } }
解决方法
在这个问题上写下你自己的订单作为Darin Dimitrov的答案:
How can I specify an explicit ScriptBundle include order?
public class MyBundleOrderer : IBundleOrderer { public virtual IEnumerable<FileInfo> OrderFiles(BundleContext context,IEnumerable<FileInfo> files) { //any ordering logic here return files; } }