mvc Bundling 学习记录

   因为现在的项目JS引用很多,无意中看到了MVC4的Bundling,开始的时候感觉很不错,将所有的CSS,js文件压缩成一个文件处理,画面调用也很简单

   于是,花了一个下午的时候研究了一下,并且通过各种情况进行测试

   可是结果不尽如人意,其中有一个比较很让人抓狂的问题

   经常做.NET的人都知道,UI画面会引用很多的插件,比如easyui,ext等等,而这些插件里面包含了很多图片引用,因为图片呢,就涉及到一个做WEB的常见难题:路径(当然,如果所有的CSS文件中图片路径都是使用的绝对路径或者项目绝对路径,那就没这个问题)

   MVC4的Bundling本应该是一个很OK的功能,也是MVC4的亮点

   但是累赘就是,被它压缩过的CSS里面的图片路径,原来的相对于CSS文件的引用路径会变为虚拟路径的相对路径

   比如:我们在项目中定义Bundling的时候如下

      bundles.Add(new ScriptBundle("~/Content/css/infocss").Include(
                        "~/Content/Skins/blue/Css/irameCss/style.css",
                        "~/Content/Css/BaseCss/infoform.css"
                        ));

   其中,("~/Content/css/infocss")为虚拟路径,被压缩后的路径,则不是按照我们定义的包含的CSS文件的相对路径,而是变成了虚拟路径的相对路径,这个时候,我们必须对每个CSS文件考虑里面的使用的图片路径再设置虚拟路径。因为我一个画面总共只需要调用三个CSS文件,而且原本的路径不一,所以感觉如果进行修改,得不偿失

   第二个问题,如果我的css文件或者JS文件本身设置了参数,比如query.artDialog.js?skin=blue,原本的设计是根据这里的SKIN参数,JS引用不同的CSS文件,如果使用Bundling,则只能分开调用。

   其他还有一些小的问题,因为时间关系,我也没有进行继续测试,在看其他博主进行使用Bundling,好像提过,对于JS带.min的文件,Bundling不进行压缩,而且文件也不进行导入。只能直接在UI画面引用,而且就算改变了JS文件名称,将.min去掉,但是本身就是压缩文件,如果再进行压缩,会不会有什么问题呢?

  

    

转载于:https://www.cnblogs.com/zhuxiaohui/p/3862552.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值