一、说明
JFinal框架结合JFinal3.0 template、jsp、beetl、freemarker模版的js、css在线合并压缩插件!结合CDN使用效果更佳哦!
二、依赖
JFinal
yuicompressor
commons-io
三、使用
<dependency> <groupId>net.dreamlu</groupId> <artifactId>JFinal-assets</artifactId> <version>1.2.0</version> </dependency>
1. JFinal3.0 template中使用
自定义指令
me.addDirective("assets", new AssetsDirective());
js
<script src='#assets("/assets/assets.jjs")'></script>
css
<link rel="stylesheet" href='#assets("/assets/assets.jcss")'/>
2. Beetl中使用
自定义标签
TAG.assets = net.dreamlu.ui.beetl.AssetsTag
js
<#assets file="/assets/assets.jjs"; src> <script src="${ctxPath}${src}"></script> </#assets>
css
<#assets file="/assets/assets.jcss"; href> <link rel="stylesheet" href="${ctxPath}${href}"/> </#assets>
file: 需要压缩的js、css列表
assets.jjs示例:
#开头表注释 /js/jquery.min.js /js/jquery-ui.min.js /js/modernizr.min.js /js/superfish.min.js /js/application.js
3. JSP中使用
首先、导入标签库
<%@ taglib prefix="assets" uri="http://www.dreamlu.net/tags/assets.tld" %>
同理如beetl
<assets:assets var="x" file="/assets/assets.jjs"> <script src="${x}" type="text/javascript" ></script> </assets:assets>
4. freemarker中使用
首先、配置(可在JFinal的config中完成)
FreeMarkerRender.getConfiguration().setSharedVariable("assets", new AssetsDirective());
同理如beetl
<@assets var="x" file="/assets/assets.jjs"> <script src="${x}" type="text/javascript" ></script> </@assets>
四、文章
对css,js压缩之combo以及七牛cdn的思考:http://blog.dreamlu.net/blog/47
五、更新说明
>## 2017-03-08 v1.2.0
>1. 升级到JFinal3.0,添加jfinal模版的支持
>## 2015-12-30 v0.0.3
>1. 升级到JFinal2.1,JFinal低版本用户请使用`v0.0.3`
六、交流群
如梦技术:237587118
七、源码地址
http://git.oschina.net/596392912/JFinal-assets
八、License
( The MIT License )