我正在使用Browserify将大型Node.js应用程序编译为单个文件(使用选项--bare
和--ignore-missing
[以避免Express中的lib-cov
出现问题])。我有一些代码动态地加载基于什么是目录中可用的模块:其中aribtrary文本的文件是从我的编译文件中加载的目录加载在我的应用使用Browserify编译动态需要的模块
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));
}
});
我得到奇怪的错误。我认为这是因为路径不能正确设置,并且因为Browserify将无法正确地动态加载像这样的文件。
制作静态index.js
文件的缺点,是否有一个首选的方法来动态地要求一个与Browserify兼容的模块目录?
非常酷。我将不得不在晚些时候搞砸了! – Brad
Muahhhahha,欺骗静态分析器,相信你正在使用它们 - 经典:D – incarnate
为什么要求(“app /”+模块)只有当我把它放在require(“app/*。 js“)是?所需的JS在编译的JS中,我可以找到它们但不能访问... – haxpanel