Требуется по требованию ()
Скажем, я создаю библиотеку в./libname
который содержит один основной файл:main.js
и несколько необязательных библиотечных файлов, которые иногда используются с основным объектом:a.js
а такжеb.js
.
я создаюindex.js
файл со следующим:
exports.MainClass = require('main.js').MainClass; // shortcut
exports.a = require('a');
exports.b = require('b');
И теперь я могу использовать библиотеку следующим образом:
var lib = require('./libname');
lib.MainClass;
lib.a.Something; // Here I need the optional utility object
lib.b.SomeOtherThing;
Однако это означает, что я загружаю "a.js" и "b.js"; всегда, а не тогда, когда они мне действительно нужны.
Конечно, я могу вручную загрузить дополнительные модули сrequire('./libname/a.js')
, но потом я теряю симпатичнуюlib.a
точка-обозначение :)
Есть ли способ реализовать загрузку по требованию с каким-то индексным файлом? Может быть, некоторыеpackage.json
магия может играть здесь хорошо?