mustache plugin for gulp
First, install gulp-mustache
as a development dependency:
npm install --save-dev gulp-mustache
Then, add it to your gulpfile.js
:
var mustache = require("gulp-mustache");
gulp.src("./templates/*.mustache")
.pipe(mustache({
msg: "Hello Gulp!"
}))
.pipe(gulp.dest("./dist"));
You may also pass in an object representing mustache partials and their contents
as a third argument to the call to mustache()
like so:
gulp.src("./templates/*.mustache")
.pipe(mustache({
msg: "Hello Gulp!",
nested_value: "I am nested.",
another_value: "1 2 3"
},{},{
some_inner_partial: "<p>{{nested_value}}</p>",
another_partial: "<div>{{another_value}}</div>"
})).pipe(gulp.dest("./dist"));
Mustache partials not given in the partials
argument will be loaded from disk, relative from the file currently being processed:
{{> ../partials/head }}
This will find a head.mustache
in the partials directory next to the current file's directory. Partials loading is recursive.
Type: hash
or string
Default: undefined
The view object, containing all template variables as keys. If you pass a string
it will be used as the path to a JSON file containing view variables.
As of v1.0.1
, file.data
is supported as a way of passing data into mustache. See this.
Type: hash
Default: { }
The options object to configure the plugin.
Type: string
Default: the extension of the current file
Type: hash
Default: { }
An optional object of mustache partial strings. See mustache.js for details on partials in mustache.