[英]Dynamically require with browserify and angular
我试图require
文件动态迭代json并使用require
方法调用它们,不幸的是,由于某些未知原因,它无法读取模块。 为什么它不要求该模块(如果存在)?
我创建了一个文件json
,其中列出了browserify应该要求的要求paths
。
{
"vendor": {
"angular-translate" : "angular-translate",
"angular-sanitize" : "angular-sanitize.min",
"ui-boostrap" : "ui-bootstrap-tpls-0.11.2.min",
"dialogs" : "dialogs"
}
}
然后,我创建了一个文件来对该json
进行迭代,并尝试要求其路径如下:
package.js
var dependencies = require('./../dependencies');
module.exports = function(angular) {
angular.forEach(dependencies.vendor, function(value,key) {
var path = '../vendor/' + value;
require('./' + path);
});
}
在主文件app.js
我以这种方式需要package.js
:
var angularJs = require('angular');
require('./package.js')(angular);
在浏览器browserifycation
,Chrome控制台给我以下错误:
未捕获的错误:找不到模块'./../vendor/angular-translate'
如何要求我的json文件中列出的那些文件?
Browserify对代码进行静态分析。 它不能遵循动态需求,因为在运行时根本不涉及它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.