添加其他命令捆绑到DynamicFolderBundle? [英] Add additional ordered bundles to a DynamicFolderBundle?

查看:284
本文介绍了添加其他命令捆绑到DynamicFolderBundle?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个 DynamicFoldewrBundle

bundles.Add(new DynamicFolderBundle("userScripts", "*.js", true, new JsMinify()));

所以,如果我运行:

So If I run :

http://optimization.localtest.me/files/templates/designs/HelloTreble/userScripts

...这将使捆绑精缩在 HelloTreble 文件夹中所有的JavaScript文件。

...It will render all Javascript files bundled and minified in the HelloTreble folder.

确定。

问:

但我怎么可以添加的自定义命令的捆绑 DynamicFolderBundle

But how can I add custom ordered bundles to DynamicFolderBundle?

我已经试过这样:

bundles.Add(new DynamicFolderBundle("userScripts", "*.js",new JsMinify())
       .Include("~/Scripts/A.js").Include("~/Scripts/B.js"))

其中确实的工作。

但输出是:


  • 第一:A.JS

  • 二:B.js

  • 第三:[全部 HelloTreble JS的文件,缩小的]

  • First : A.JS
  • Second : B.js
  • Third : [All HelloTreble's js files , minified]

(<子>当然,在一个文件)

但我真的后为:


  • 第一:[全部 HelloTreble JS的文件,缩小的]

  • 二:A.js

  • 第三:B.js

  • First : [All HelloTreble's js files , minified]
  • Second : A.js
  • Third : B.js

(<子>当然,在一个文件)

推荐答案

您可以实施 IBundleOrderer 界面像

public class MyBundleOrderer : IBundleOrderer 
{ 
    public IEnumerable<BundleFile> OrderFiles(BundleContext context, IEnumerable<BundleFile> files) 
    { 
        var list = new List<BundleFile>(files); 
        list.Reverse(); 
        return list; 
    } 
}

,然后附加给你的 DynamicFolderBundle

var myDynamicBundle = new DynamicFolderBundle("userScripts", "*.js",true,new JsMinify())
.Include("~/Scripts/bootstrap.js")
.Include("~/Scripts/respond.js");

myDynamicBundle.Orderer = new MyBundleOrderer();
bundles.Add(myDynamicBundle);

您的脚本将为了渲染 respond.js ,那么 bootstrap.js ,那么你的脚本 userScripts 捆绑。

Your scripts will be rendered in order respond.js, then bootstrap.js, then your scripts in userScripts bundle.

这篇关于添加其他命令捆绑到DynamicFolderBundle?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆