Skip to content
This repository has been archived by the owner on Aug 13, 2021. It is now read-only.

Latest commit

 

History

History
61 lines (42 loc) · 1.01 KB

README.md

File metadata and controls

61 lines (42 loc) · 1.01 KB

merge-context

like _.bind() and _.bindAll() but extends the context (this) instead of replacing it

Install

$ npm install merge-context

Usage

var mergeCtx = require('merge-context');

var someFunction = function () { console.log(this.foo); }

// someFunction();
// $ undefined

someFunction = mergeCtx(someFunction, {
  foo: true
  'and you know, the stuff': 82385235,
  I: 93529523,
  want: 2352,
  'to inject into': 'someFunction\'s `this` variable'
});

// someFunction();
// $ true

.all( objOfFunctions, stuff )

To do an object of functions all at once (like _.bindAll)

var mergeCtx = require('merge-context');

var someObject = {
  foo: function () { ... },
  bar: function () { ... },
  baz: function () { ... }
};
someObject = mergeCtx.all(someObject, {
  sails: require('sails')
});

// Now I can do:
someObject.foo();
someObject.bar();
someObject.baz();

// And they'll all have access to `this.sails` in there.

License

MIT © Mike McNeil 2014