@momsfriendlydevco/template
ES6 template renderer with support for dotted notation and handlebars
Last updated a year ago by hash-bang .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install @momsfriendlydevco/template 
SYNC missed versions from official npm registry.

@MomsFriendlyDevCo/Template

Simple ES6 template renderer.

Features:

  • Optional compile step
  • Supports {{handlebars}} style formatting as well as ${es6Templates}}
  • Supports dotted style adressing - even with arrays e.g. {{foo.0.bar.1.baz}}
  • Tiny with no-dependencies
var template = require('@momsfriendlydevco/template');

template('Hello ${name}`, {name: 'Matt'}) //= "Hello Matt"
template('Hello {{name}}`, {name: 'Matt'}) //= "Hello Matt" (same with handlebars syntax)
template('Random chance: ${Math.floor(100 * Math.random())}%') //= "Random Chance: XX%"

API

This module exposes two main functions, the global will immediately execute a template and return its value, whereas .compile() will return a reusable function which can be called multiple times.

template(template, locals, options)

Compile and run the template using the provided locals. If options are not provided they are imported from template.defaults.

template.compile(template, options)

Compile and return a function which can take different sets of locals.

var template = require('@momsfriendlydevco/template');

var compiled = template.compile('Hello ${name}');
compiled({name: 'Matt'}); //=> 'Hello Matt'
compiled({name: 'Joe'})); //=> 'Hello Joe'

template.defaults

Default options to use.

Option Type Default Description
globals Object {Date, Math} Global level objects to use when evaluating templates
dotted boolean true Enable dotted notation
handlebars boolean true Support simple handlebars syntax (e.g. {{variable}})
script Object {} Additional settings to pass to vm.Script() when compiling the script
safeUndefined boolean true Wrap the context in a proxy so accessing top level undefined aliases doesn't throw

Current Tags

  • 1.1.2                                ...           latest (a year ago)

4 Versions

  • 1.1.2                                ...           a year ago
  • 1.1.1                                ...           a year ago
  • 1.1.0                                ...           a year ago
  • 1.0.0                                ...           a year ago
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (0)
None
Dev Dependencies (2)

Copyright 2014 - 2017 © taobao.org |