loading

loading dir files as module to an object

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
loading
1.13.37 years ago10 years agoMinified + gzip package size for loading in KB

Readme

loading
!NPM versionnpm-imagenpm-url !build statustravis-imagetravis-url !Test coveragecoveralls-imagecoveralls-url !Daviddavid-imagedavid-url !Known Vulnerabilitiessnyk-imagesnyk-url !npm downloaddownload-imagedownload-url
loading dir files as module to an object.

Install

$ npm install loading

Module loading init rules

  • module.exports = function (app) module as initialization function

  • map Pascal Case modules -> Lower Camel Case such as raw_modules -> rawModules

  • if opt.lowercaseFirst = true then map SomeDir.SomeClass -> someDir.someClass

Usage

var loading = require('loading');

var app = {};
// app.services.foo
loading('/services').concat('/overwrite_services').into(app, 'services');
loading('/models').into(app, 'models');
loading('/controllers').into(app, 'controllers');
console.log(app);

// /services/foo.js
exports.get = function (callback) {
  setTimeout(function () {
    callback(null, 'bar');
  }, 1);
};

// /services/userProfile.js
module.exports = function (app) {
  return {
    getByName: function (name, callback) {
      setTimeout(function () {
        callback(null, {name: name});
      }, 1);
    }
  };
};

Options

var loading = require('loading');

loading(PATH,[{call:true}]).into(TARGET, FIELD, [filters])
decide whether auto call the function when module.exports is a function, default: true .
only inject the item in filters .
decide whether override the property that is already exist, default: false
ignore file. If ignore is not null, ignore rule will be glob string !ignore. default: undefined
decide whether lowercase the first letter of property default: false

License

MIT