layouts
Wrap templates with layouts. Layouts can use/refer to other layouts, allowing them to be nested.
Install
npm i layouts --save
Usage
var layouts = require('layouts');
API
Layouts
Create a new instance of Layouts
, optionally passing the default
cache
and options
to use.
Example:
var Layouts = require('layouts');
var layout = new Layouts();
cache
{Object}: A template cache. See Layouts#set for object details.options
{Object}: Options to use.options.delims
{Array}: Template delimiters to use formatted as an array (['{{', '}}']
)options.tag
{String}: The tag name to use. Default is body
(e.g. {{ body }}
)
.set
Store a template on the cache by its name
, the layout
to use,
and the template's `content.
Example:
layout.set('a', 'b', '<h1>Foo</h1>\n{{body}}\n');
name
{String|Object}: If name
is a string, layout
and content
are required.data
{String|Object}: Pass a string defining the name of layout to use for the given template, or pass an object with a layout
property.content
{String}: The template "content", this will not be compiled or rendered.
.get
Get a cached template by name
.
Example:
layout.get('a');
name
{String}return
{Object} The template object to return.
.wrap
Flatten nested layouts.
Example:
var page = layout.wrap('base');
var tmpl = _.template(page, context);
name
{String}: The layout to start with.return
{String} Resulting flattened layout.
Author
Jon Schlinkert
License
Copyright (c) 2014 Jon Schlinkert, contributors.
Released under the MIT license
This file was generated by verb-cli on July 28, 2014.