Я использую Browserify для компиляции большого приложения Node.js в один файл (с помощью опций --bare
и --ignore-missing
[во избежание проблем с lib-cov
в Express]). У меня есть некоторый код для динамической загрузки модулей на основе того, что доступно в каталоге:
var fs = require('fs'),
path = require('path');
fs.readdirSync(__dirname).forEach(function (file) {
if (file !== 'index.js' && fs.statSync(path.join(__dirname, file)).isFile()) {
module.exports[file.substring(0, file.length-3)] = require(path.join(__dirname, file));
}
});
Я получаю странные ошибки в моем приложении, где загружаются файлы aribtrary text из каталога, в который загружен мой скомпилированный файл. Я думаю, что это потому, что пути больше не установлены правильно, и потому что Browserify не сможет require()
правильные файлы, которые динамически загружаются следующим образом.
За исключением создания статического файла index.js
, существует ли предпочтительный метод динамического запроса каталога модулей, совместимых с браузером?