gulp-template-compile
v1.5.1
Published
Gulp task to precompile lodash templates
Downloads
1,497
Maintainers
Readme
gulp-template-compile
Compile Lo-Dash templates (should work with Underscore templates too).
Synopsis
This plugin is heavily inspired by Sindre Sorhus's gulp-nunjucks plugin, in fact I used it as skeleton for creating this one.
Install
Install with npm
npm install --save-dev gulp-template-compile
Example
gulpfile.js
var gulp = require('gulp');
var template = require('gulp-template-compile');
var concat = require('gulp-concat');
gulp.task('default', function () {
gulp.src('src/*.html')
.pipe(template())
.pipe(concat('templates.js'))
.pipe(gulp.dest('dist'));
});
API
See the Lo-Dash _.template
docs.
template(options)
options
Type: Object
options.name
Type: Function
Default: Relative template path. Example: templates/list.html
You can override the default behavior by supplying a function which gets the current File object and is expected to return the name.
Example:
{
name: function (file) {
return 'tpl-' + file.relative;
}
}
options.namespace
Type: String
Default: 'JST'
The namespace in which the precompiled templates will be assigned. Starting from version 1.0 you could also provide a dotted namespace that will be correctly handled, thanks to fhawkes. For example 'custom.namespace' will result in window['custom']['namespace']
.
options.templateSettings
Type: Object
Default: null
options.IIFE
Type: 'Boolean' Default: null
Wrap each precompiled template with an IIFE. If you don't need it simply set this option to false
.
Changelog
1.3.0:
- FEATURE: Added
options.IIFE
#14
1.0.0:
- BREAKING: Added support for custom dotted namespaces.
Notes
If you use grunt instead of gulp, but want to perform a similar task, use grunt-contrib-jst.
License
MIT © Emanuele Ingrosso