gulp-xtpl
Version:
Gulp XTpl (XTemplate) for TMall Biz
75 lines (50 loc) • 2.48 kB
Markdown
# Gulp XTpl (XTemplate) for TMall Biz [](http://gitlab-ci.alibaba-inc.com/projects/377?ref=master)
---------
<span style="float:right;font-style:italic;">Last-modified by **[zhuofeng.ls](mailto:zhuofeng.ls@tmall.com)** on **2015.01.31**.</span>
> Core:[XTemplate.git](https://github.com/xtemplate/xtemplate.git)
## Quick Start
**安装**
- 在项目工程根目录下执行下面命令:
➜ npm install gulp-xtpl --save-dev # 依赖配置会自动配置到package.json中
**使用**
- 在项目工程目录的`gulpfile.js`中调用:
var XT = require('gulp-xtpl');
...
gulp.task('xtpl2kmd', ['clean'], function() {
var options_obj = {}; // options_obj: to see the example below.
return gulp.src('src/**.xtpl')
.pipe(XT(options_obj)),
.pipe(gulp.dest('tpls'));
})
注:
defaultOptions = {
extName: '.xtpl.js',
compileConfig: {
isModule: true
},
header: '/* ! Generated by node module \'gulp-xtpl\'(core XTemplate@{{version}}). The install command is `npm install gulp-xtpl`. */',
pkgCfg: '', // e.g. '!KISSY.Config.packages.kg && KISSY.config({packages:{kg:{base: "//g.tbcdn.cn/kg/",ignorePackageNameInUri:true}}});'
prefix: function (options, file) {
var name = genModName(file);
return 'KISSY.add("' + name + '", ';
},
suffix: function (options, file) {
return ',{requires: ["kg/xtemplate/{{version}}/runtime"]});';
},
before: function (content, options, file) {
return content;
},
after: function (content, options, file) {
return content;
}
}
**gulp-xtpl开发**
参与gulp-xtpl的开发步骤:
1. 本地clone下git仓库代码,进行本地修改、调试及单元测试(记得补充对应的 **测试用例**):
➜ make test # 单元测试命令
2. 更新版本日志([CHANGELOG.md](http://gitlab.alibaba-inc.com/tap/gulp-xtpl/blob/master/CHANGELOG.md))
3. 执行发布
➜ ./publish # 新版本发布命令
4. 查看发布状态(浏览器打开如下地址):
https://www.npmjs.com/package/gulp-xtpl
**[Change Log](http://gitlab.alibaba-inc.com/tap/gulp-xtpl/blob/master/CHANGELOG.md)**