使用yui压缩生产环境下的js和css文件。

zhouguizhi 2012-01-10

本文是借助Maven为项目划分development,test,production环境的延续。

为了提高页面响应速度,一般要对页面应用的js和css文件进行压缩、合并。但在开发环境不能压缩和合并,避免影响前端web开发调试。这里提出我的实现方案,利用profile特性,判断是在test和production环境中,页面自动压缩合并。为此我们替换掉页面的<script>和<link>。使用自定的标签引入js和css文件。实例如下:

<yui:compressor type="css" location="embed">
			/resources/css/Main.css;
			/resources/js/easyui/themes/default/easyui.css;
			/resources/js/easyui/themes/icon.css
		</yui:compressor>
		<yui:compressor type="javascript" location="embed">
			/resources/js/jquery.min.js;
			/resources/js/easyui/jquery.easyui.min.js;
			/resources/js/user.js
		</yui:compressor>

如果是在开发环境下,生成的code如下:

<link rel="stylesheet" type="text/css" href="/resources/css/Main.css"><link rel="stylesheet" type="text/css" href="
			/resources/js/easyui/themes/default/easyui.css"><link rel="stylesheet" type="text/css" href="
			/resources/js/easyui/themes/icon.css">
		<script type="text/javascript" src="/resources/js/jquery.min.js"></script><script type="text/javascript" src="
			/resources/js/easyui/jquery.easyui.min.js"></script><script type="text/javascript" src="
			/resources/js/user.js"></script>

如果是在生产和测试环境,js文件可以压缩合并后,存放到临时文件,页面引用临时文件。js压缩合并文件也可以嵌入在当前页面。css也是同样的。

这里简单介绍了我的的实现方案,也是借此希望看到大家能够提出更好的方案。

相关推荐

aSuncat / 0评论 2020-08-18