UNPKG

gulp-micro-tpl-compiler

Version:
91 lines (65 loc) 1.97 kB
> gulp micro template编译器,将micro template提前预编译为function,提升模板性能。编译后的模板可通过配置支持seajs,requirejs,kissy,nodejs模块化,也可以完全自定义配置项wrap配置编译后代码的前后包裹。 ## 特性 > * micro template直接使用js语法,近乎零学习成本 > * 通过编译micro template提升模板运行性能 > * 支持模板间互相调用 > * 因为使用js语法,支持同时运行在client(浏览器)端和server(nodejs)端 > * 支持模板编译报错提示错误信息,源模板行号 > * 支持模板运行错误时提示错误信息,源模板行号 ## 使用 ### 安装 ```shell npm install gulp-micro-tpl-compiler --save-dev ``` ### gulpfile.js ``` require('gulp-micro-tpl-compiler'); ``` ### 样例 ```js gulp.task('compiler', function() { gulp.src('./src/**/*.mtpl.html') .pipe(plumber()) .pipe(mtpl( { wrap: 'kissy' } )) .pipe(rename(function(path) { console.log(path.basename); path.extname = '.js'; })) .pipe(gulp.dest('./build')) }); ``` ## 参数说明 #### banner 类型: `String` 默认: `''` 文件头。 #### lineNumber 类型: `Boolean` 默认: `false` 运行错误时是否提示行号,默认不提示。 #### wrap 类型: `String|Object|function` 可选: `'nodejs'`, `'requirejs'`, `'seajs'`, `'kissy'`, `wormhole`, `'default'`, `{before: '', after: ''}` or ```js function(code) { //do something return code; } ``` Default: `default` ```js /** * options.wrap {Object} */ wrap { before: 'KISSY.add(function (S, require, exports, module) {\n module.exports = ', after: '});' } ``` 对代码进行封装,可以使用现有模板 'requirejs', 'nodejs', 'kissy'等等 ## 鸣谢 `grunt-micro-tpl-compiler`项目。