node.js na require
pozwala
ładować tylko jeden moduł w czasie, tylko
Załaduj moduły synchronicznej mody.
Tak działa system modułów w pliku Node.js. Ale jeśli chcesz mieć minimatch rodzaju pasującego funkcjonalności, można toczyć jedną na własną rękę, jak to
var path = require("path"),
glob = require("glob");
function requirer(pattern) {
var modules = {},
files = glob.sync(pattern);
files.forEach(function(currentFile) {
var fileName = path.basename(currentFile);
fileName = fileName.substring(0, fileName.lastIndexOf(".js"));
modules[fileName] = require(currentFile);
});
return modules;
}
Zależy to od modułu glob
, który pozwala korzystać z wzorców minimatch do wyszukiwania plików, a potem wymagać znaleźć pliki, zapisać je w obiekcie i zwrócić obiekt. I to może być używany jak to
var modules = requirer('./packages/*/model/*.js');
console.log(modules.cities);
P.S: pracuję na co ten się public module już.
Dziękuję, macek. – 9me