gulp-squirrelly
v6.0.1
Published
Render/precompile Squirrelly templates
Downloads
19
Maintainers
Readme
gulp-squirrelly
Render/precompile Squirrelly templates
This package is a near-identical clone of gulp-template by sindresorhus, just with Squirrelly subbed in for lodash.template. It was thrown together quickly so please open an issue or PR if you find anything that isn't quite right.
Install
$ npm install --save-dev gulp-squirrelly
Usage
src/greeting.html
<h1>Hello {{ it.name }}</h1>
gulpfile.js
const gulp = require('gulp');
const template = require('gulp-squirrelly');
exports.default = () => (
gulp.src('src/greeting.html')
.pipe(template({name: 'Sindre'}))
.pipe(gulp.dest('dist'))
);
You can alternatively use gulp-data to inject the data:
const gulp = require('gulp');
const template = require('gulp-squirrelly');
const data = require('gulp-data');
exports.default = () => (
gulp.src('src/greeting.html')
.pipe(data(() => ({name: 'Sindre'})))
.pipe(template())
.pipe(gulp.dest('dist'))
);
dist/greeting.html
<h1>Hello Sindre</h1>
API
template(data, options?)
Render a template using the provided data
.
template.precompile(options?)
Precompile a template for rendering dynamically at a later time.
data
Type: object
Data object used to populate the text.
options
Type: object
Squirrelly configuration. Defaults to Sqrl.defaultConfig
.
Tip
You can also provide your own interpolation strings (see "tags" here) for custom templates.
src/greeting.html
<h1>Hello <% it.name %></h1>
gulpfile.js
const gulp = require('gulp');
const template = require('gulp-squirrelly');
const data = require('gulp-data');
const Sqrl = require('squirrelly');
exports.default = () => (
gulp.src('src/greeting.html')
.pipe(template(
{ name: "Sindre" },
Sqrl.getConfig({ tags: ["<%", "%>"] })
))
.pipe(gulp.dest('dist'))
);
Note: Sqrl.getConfig
merges the object you provide into Squirrelly's default configuration.
dist/greeting.html
<h1>Hello Sindre</h1>