gulp-apply-template
Apply templates to file contents.
For each file in the stream, replace the file's contents by rendering a template, using the file object as the template's data or context.
Similar to gulp-wrap, with these differences:
- Uses consolidate.js to support multiple template engines.
- Uses properties from File object itself as template context.
Usage
Install as a development dependency:
npm install --save-dev gulp-apply-template
Then, use it in your gulpfile.js
:
var applyTemplate = ; gulp
API
gulp-apply-template
is called with a single options object as an argument.
The available options are:
engine
Type: string
or function(context, file)
required
The template engine to use. If a function, it will be called with these arguments, returning the engine name to use:
-
context: The template context
-
file: The File object being processed
template
Type: string
or function(context, file)
required
The template file path to use. If a function, it will be called with
the same arguments as engine
, returning the template path.
context
Type: object
or function(file)
The default template context to use. If a function, it will be called with
one argument, file
, the File object. Defaults to an empty object. These
will always override properties assigned from the File object.
props
Type: array
Array of names of File object properties to assign to template context,
defaults to ['path', 'contents', 'data']
.
Examples
Use gulp-front-matter to dynamically determine template engine and path to use:
gulp
Ignore Vinyl File properties and use only contents and data provided by gulp-data:
gulp