muject

1.2.0 • Public • Published

µject

10 sloc, ⅛ kb, no-bullshit dependency injection micro-library

NPM

Usage

Create a new injector

var modules = {},
    inject = require('muject').bind(require, modules);

Require dependencies inside a module

module.exports = function myModule (depFoo, depBar, depBaz) {
  this.exportA = ...;
  this.exportB = ...;
};
module.exports.inject = ['foo', 'bar', 'baz'];

Register dependencies & require a module

modules.foo = inject('./my/foo'); // require, register w/ injection

modules.bar = require('./my/bar'); // require, register w/o injection

modules.baz = inject(function (bar) {  // direct, register w/ injection
  return bar.doSomething();
}, ['bar']);

var myModule = inject('./my/module.js');

myModule.exportA();
myModule.exportB();

Dependencies (0)

    Dev Dependencies (2)

    Package Sidebar

    Install

    npm i muject

    Weekly Downloads

    0

    Version

    1.2.0

    License

    MIT

    Last publish

    Collaborators

    • srijs