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去掉,但是本身就是压缩文件,如果再进行压缩,会不会有什么问题呢?
mvc Bundling 学习记录的更多相关文章
- mvc Bundling 学习记录(一)
参考博客:http://www.cnblogs.com/xwgli/p/3296809.html 这里要详细记录的是对于现有MVC项目进行Bundling功能 1 如果没有System.Web.Op ...
- ASP.Net Mvc 5 学习记录2015-9-9
我之前一直都是学习和开发都采用ASP.Net WebForm,对MVC的一直都是一知半解,最初以为ASP.Net WebForm的N层架构就是MVC.其实N层架构设计思想是"高内聚,低耦合& ...
- MVC 菜鸟学习记录2
自定义Html.Helper扩展方法 在Models文件夹下新建一个静态类,取名为:MyHtmlHelper.cs 将MyHtmlHelper设置为static,并写入以下的一个静态方法 public ...
- MVC 菜鸟学习记录1
Asp.Net MVC 模式是一种表现模式.它将web应用程序分成三个主要组件即: Model.View.Controller M:Model 主要是存储或者是处理数据的组件 Model其实是实 ...
- MVC+Ext.net零基础学习记录(五)
继MVC+Ext.net零基础学习记录(四),在后面我在既有的项目上又添加了一个子项目,还用前面提到的方法,进行主项目中引用DLL,然后子项目中生成事件中使用mkdir 进行拷贝 发现一个下午就总是报 ...
- MVC+Ext.net零基础学习记录(四)
在上一篇文章[MVC+Ext.net零基础学习记录(三)]中提到了利用MVC的Area可以做到项目分离,但是实际操作起来还是有很多问题的.比如,对于物理资源的访问,会报:没有相关资源 开始的时候,我在 ...
- 我的Spring Boot学习记录(二):Tomcat Server以及Spring MVC的上下文问题
Spring Boot版本: 2.0.0.RELEASE 这里需要引入依赖 spring-boot-starter-web 这里有可能有个人的误解,请抱着怀疑态度看. 建议: 感觉自己也会被绕晕,所以 ...
- ASP.NET MVC 5 学习教程:通过控制器访问模型的数据
原文 ASP.NET MVC 5 学习教程:通过控制器访问模型的数据 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连 ...
- ASP.NET MVC 5 学习教程:创建连接字符串
原文 ASP.NET MVC 5 学习教程:创建连接字符串 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 ...
随机推荐
- Drools环境搭建
Eclipse3.5安装Drools6.5.0.Final插件 到Drools下载页面(现在是http://www.jboss.org/drools/downloads.html) -下载并解压Dro ...
- ArrayList和HashSet的比较
ArrayList是数组存储的方式 HashSet存储会先进行HashCode值得比较(hashcode和equals方法),若相同就不会再存储 HashCode和HashSet类 Hashset就是 ...
- GCC编译笔记
需要移植一个vs2008的项目到linux上,代码比较复杂,重新写比较困难,于是开始折腾 首先移植到codeblocks上,sprints_s这类的vs函数都要改,windows调用要改 编译通过 c ...
- 【音乐App】—— Vue-music 项目学习笔记:用户个人中心开发
前言:以下内容均为学习慕课网高级实战课程的实践爬坑笔记. 项目github地址:https://github.com/66Web/ljq_vue_music,欢迎Star. 歌曲列表 收藏歌曲 一.用 ...
- mysql 导入sql文件时编码报错
1.命令行导入 mysql -uroot -pnewpwd --default-character-set=utf8 databasename < xxx.sql 2.使用source导入 进入 ...
- vue2.X 自定义 模态框 modal
1.自定义 modal Modal.vue <!-- 模态框 --> <template> <div class="modal-mask" v-sho ...
- 导出txt格式的说明书
/// <summary> /// 说明书 /// </summary> /// <returns></returns> public FileResu ...
- iOS多线程与网络开发之小文件上传
郝萌主倾心贡献,尊重作者的劳动成果,请勿转载. /** 取得本地文件的MIMEType */ 2 - (void) getMIMEType { 3 // Socket 实现断点上传 4 5 //apa ...
- 一文了解ConfigurationConditon接口
ConfigurationCondition 接口说明 @Conditional 和 Condition 在了解ConfigurationCondition 接口之前,先通过一个示例来了解一下@C ...
- com.opensymphony.xwork2.ognl.OgnlValueStack - Error setting expression 'customer.applyRate' with value '[Ljava.lang.String;@7d3fae2c'
出错的3个最可能的原因:我是第二种错误 1.action配置错误 <action name="doCreateMeetingInfo" class="meeting ...