Compile/precompile Nunjucks templates
Issues with the output should be reported on the Nunjucks issue tracker.
$ npm install --save-dev gulp-nunjucks
const gulp = require('gulp');
const nunjucks = require('gulp-nunjucks');
gulp.task('default', () =>
gulp.src('templates/greeting.html')
.pipe(nunjucks.compile({name: 'Sindre'}))
.pipe(gulp.dest('dist'))
);
You can alternatively use gulp-data to inject the data:
const gulp = require('gulp');
const nunjucks = require('gulp-nunjucks');
const data = require('gulp-data');
gulp.task('default', () =>
gulp.src('templates/greeting.html')
.pipe(data(() => ({name: 'Sindre'})))
.pipe(nunjucks.compile())
.pipe(gulp.dest('dist'))
);
const gulp = require('gulp');
const nunjucks = require('gulp-nunjucks');
gulp.task('default', () =>
gulp.src('templates/greeting.html')
.pipe(nunjucks.precompile())
.pipe(gulp.dest('dist'))
);
Compile a template using the provided data
.
Type: Object
The data object used to populate the text.
Type: Object
Options will be passed directly to the Nunjucks Environment constructor which will be used to compile templates.
Type: nunjucks.Environment
Default: new nunjucks.Environment()
The custom Nunjucks Environment object which will be used to compile templates. If supplied, the rest of options
will be ignored.
Precompile a template for rendering dynamically at a later time.
Same options as nunjucks.precompile()
except for name
.
Type: Object
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: file => `tpl-${file.relative}`
}
MIT © Sindre Sorhus