问下压缩策略问题
riskers opened this issue · 3 comments
riskers commented
现在,一些模版是共用的,在Public里,一些不是共用的,在tpl里。按照demo里写的,就把所有页面的模版都压缩在一个template.js里了,这样会不会很大?而且我感觉也不爽,因为用不到的模版也加载进来了。
请问这样怎么解决?是分成多个template.js么,这样的话,使用tmod命令就挺麻烦的。纠结~~
希望给出一个方向。。。
aui commented
可以不让它合并,即每个模板单独输出一个 js 文件,再使用第三方打包方案
riskers commented
说一下,我现在使用的gulp watch监测文件,然后combo设置成false,模版js文件就分开了:
var gulp = require('gulp');
var tmodjs = require('gulp-tmod');
var watch = require('gulp-watch');
gulp.task('ttt', function(){
return gulp.src('./tpl/*.html')
.pipe(tmodjs({
base: './tpl',
combo: false ,
output: './dist'
}));
});
gulp.task('watch', function(){
gulp.watch('./tpl/*.html',['default'])
});
jaryway commented
我现在的做法是使用tmodjs 生成cmd模式,再使用grunt concat合并,页面加载时报模板错误。
cmd生成以下两个文件
tpl\memberList.js;
tpl\memberView.js;
现在想把这两个文件合并成member.js
<script type="text/javascript">
seajs.config({
base: "../scripts/",
alias: {
"zepto": "zepto/zepto-cmd.min",
"fastclick": "fastclick.min",
"member": "tpl/member",
//"member-list": "tpl/memberList",
//"member-view": "tpl/memberView",
"home": "modules/src/home"
}
});
seajs.use("home");
</script>
home中我这样写,报模板错误
var template = require("member");
$("#member_list").append(template("memberList"/模块Id/, { list: data.Data }));
请教一下我该怎么写呢?