首页 > Web开发 > 详细

mvc Bundling 学习记录

时间:2014-07-23 12:53:46      阅读:346      评论:0      收藏:0      [点我收藏+]

   因为现在的项目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去掉,但是本身就是压缩文件,如果再进行压缩,会不会有什么问题呢?

  

    

mvc Bundling 学习记录,布布扣,bubuko.com

mvc Bundling 学习记录

原文:http://www.cnblogs.com/zhuxiaohui/p/3862552.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!