loading dir files as module to an object.
$ npm install loading
-
module.exports = function (app)
module as initialization function -
map
Pascal Case
modules ->Lower Camel Case
such asraw_modules
->rawModules
-
if
opt.lowercaseFirst = true
then mapSomeDir.SomeClass
->someDir.someClass
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);
}
};
};
var loading = require('loading');
loading(PATH,[{call:true}]).into(TARGET, FIELD, [filters])
-
call type:[
object
] decide whether auto call the function when module.exports is a function, default: true . -
filters type:[
string array
] only inject the item infilters
. -
override type:[
boolean
] decide whether override the property that is already exist, default: false -
ignore type:[
string function
] ignore file. If ignore is not null, ignore rule will be glob string!ignore
. default: undefined -
lowercaseFirst type:[
boolean
] decide whether lowercase the first letter of property default: false
MIT