task-registry-template-engine
Collects the template engines and abstract template-engine task.
The template engine uses to render a document with specified configuration data.
The first registered template engine is the default template engine.
Usage
var Task = //register lodash template engine var templateEngine = Task 'TemplateEngine' var result = templateEngine // the result is 'hello Mikey!'
Develope a new template engine
isFunction= require 'util-ex/lib/is/type/function'isString = require 'util-ex/lib/is/type/string'Task = require 'task-registry-template-engine'register = Taskregisteraliases = Taskaliases register LodashTemplateEngine defineProperties LodashTemplateEngine escape: # The HTML "escape" delimiter. type: 'RegExp' evaluate: # The "evaluate" delimiter. type: 'RegExp' imports: # An object to import into the template as free variables. type: 'Object' interpolate: # The "interpolate" delimiter. type: 'RegExp' sourceURL: # The sourceURL of the template’s compiled source. type: 'String' variable: # The data object variable name. type: 'String' : ->return super : vTemplate = aOptionstemplate vTemplate = _template vTemplateaOptions if isString vTemplate result = vTemplate aOptionsdata if isFunction vTemplate result
API
templateEngine.executeSync(aOptions)/templateEngine.execute(aOptions, done)
- arguments
aOptions
(Object):template
(String): the template stringdata
(Object): the data properties to replace.engine
(String|Object): the template engine name if it's string.name
(String): the template engine name- ...: the template engine's options
done
Function(error, result): the result callback function for async execute.
- returns (String): the rendered result string.
TODO
License
MIT