【发布时间】:2014-11-08 15:39:11
【问题描述】:
我正在尝试 require 文件动态迭代 json 并使用 require 方法调用它们,不幸的是它由于某些未知原因无法读取模块。如果存在,为什么它无法要求该模块?
我创建了一个文件 json,我将在其中列出我的需求 paths browserify 应该需要的。
{
"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不适用于动态路径。路径应该是硬编码的。 -
哦,这是个坏消息 :( 没有办法解决这个问题?
标签: javascript angularjs node.js browserify