Browserify + AngularJS index.js IIFE params undefined

时间:2016-06-20 20:08:41

标签: javascript angularjs browserify params iife

对于角度应用,我有以下index.js。即使首先执行var语句,并且在执行IIFE之前所有变量都成功记录到控制台,但一旦进入IIFE范围,它们就是未定义的,但angular除外。据推测,角度是定义的,因为角度是一个全局对象。我以同样的方式看到了windowjquery。我只是想知道我是否有办法将这些本地声明的对象传递给我的应用程序的主要IIFE脚本?我做错了吗?请帮忙 - 我很难过。

var angular = require('angular'),
    config = {
        params: require('./config/params').config,
        routes: require('./config/routes').config
    },
    x = {};


(function (angular, config, x) {

    // *****angular is the only one of these parameters that is defined here

    console.info(angular) // works
    console.info(config) // undefined
    console.info(x) // works
})(angular, config, x);

更新

正如评论者所指出的,这是browserify的一个问题。如果我传递一个对象我按字面意思声明,它可以正常工作。有谁知道为什么会这样或者如何修复它?

这是我的browserify命令:

browserify -e -d src/index.js -p [minifyify --map sourcemap.json --output sourcemap.json --uglify] > build/index.js

(为了简洁,我删除了参数值并缩短了路径。)

0 个答案:

没有答案