Bind a context to all functions in an object, including deeply nested functions.
Install with npm:
$ npm install deep-bind --save
var deepBind = require('deep-bind');
Example
Bind a context to an object of template helpers before passing them to an engine:
var ctx = {
app: {views: {}},
context: {a: 'b'}
};
// pass the following to the template engine
var helpers = deepBind({
foo: function() {
return this.context;
},
bar: function() {},
baz: function() {}
}, ctx);
Bind a thisArg
to all the functions on the target
Params
target
{Object|Array}: Object or Array with functions as values that will be bound.thisArg
{Object}: Object to bind to the functionsreturns
{Object|Array}: Object or Array with bound functions.
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Generate readme and API documentation with verb:
$ npm install verb && npm run docs
Or, if verb is installed globally:
$ verb
Install dev dependencies:
$ npm install -d && npm test
Jon Schlinkert
Copyright © 2016, Jon Schlinkert. Released under the MIT license.
This file was generated by verb, v0.9.0, on May 02, 2016.