async-helpers
Use async helpers in templates with engines that typically only handle sync helpers. Handlebars and Lodash have been tested.
Install with npm
$ npm i async-helpers --save
Usage
var asyncHelpers = require('async-helpers');
API
Create a new instance of AsyncHelpers
returns
{Object}: new AsyncHelpers instance
Example
var asyncHelpers = new AsyncHelpers();
Add a helper to the cache.
Params
name
{String}: Name of the helperfn
{Function}: Helper functionreturns
{Object}: Returns this
for chaining
Example
asyncHelpers.set('upper', function (str, cb) {
cb(null, str.toUpperCase());
});
Get all helpers or a helper with the given name.
Params
name
{String}: Optionally pass in a name of a helper to get.options
{Object}: Additional options to use.returns
{Function|Object}: Single helper function when name
is provided, otherwise object of all helpers
Example
var helpers = asyncHelpers.get();
var wrappedHelpers = helperAync.get({wrap: true});
Wrap a helper with async handling capibilities.
Params
name
{String}: Optionally pass the name of the helper to wrapreturns
{Function|Object}: Single wrapped helper function when name
is provided, otherwise object of all wrapped helpers.
Example
var wrappedHelper = asyncHelpers.wrap('upper');
var wrappedHelpers = asyncHelpers.wrap();
Reset all the stashed helpers.
returns
{Object}: Returns this
to enable chaining
Example
asyncHelpers.reset();
Resolve a stashed helper by the generated id.
Params
key
{String}: ID generated when from executing a wrapped helper.cb
{Function}: Callback function with the results of executing the async helper.
Example
var upper = asyncHelpers.get('upper', {wrap: true});
var id = upper('doowb');
asyncHelpers.resolveId(id, function (err, result) {
console.log(result);
});
Related projects
Run tests
Install dev dependencies:
$ npm i -d && npm test
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Author
Brian Woodward
License
Copyright © 2015 Brian Woodward
Released under the MIT license.
This file was generated by verb-cli on August 30, 2015.