使用browserify和angular动态需要

时间:2014-11-08 15:39:11

标签: javascript angularjs node.js browserify

我尝试require文件动态迭代json并使用require方法调用它们,遗憾的是它因某些未知原因无法读取模块。如果存在,为什么它不需要模块?

我创建了一个文件json,我将列出浏览器应该要求的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文件中列出那些文件?

1 个答案:

答案 0 :(得分:0)

Browserify会对您的代码进行静态分析。它不能遵循动态要求,因为它在运行时根本不涉及。