JSPM

  • Created
  • Published
  • Downloads 32365
  • Score
    100M100P100Q152552F

Wrap templates with layouts. Layouts can be nested and optionally use other layouts.

Package Exports

  • layouts

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (layouts) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

layouts NPM version

Wrap templates with layouts. Layouts can use/refer to other layouts, allowing them to be nested.

Install

npm

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');
//=> { layout: 'b', content: '<h1>Foo</h1>\n{{body}}\n' }
  • 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.