Browserify窗口对象没有全局变量

时间:2015-11-12 17:51:24

标签: javascript global-variables browserify

我需要添加一个表单的全局库:

window.Foo = function() {
  api = {};
  api.myVar = GLOBALS;
  return api;
}

使用外部脚本标记到我的项目。 GLOBALS是从window所依赖的另一个库添加到window.FOO的另一个变量。但是,当我在其中一个Browserify模块中访问window时,window.Foo不存在。如果我尝试填充window.FOO,则其全局依赖关系不可用。不过,我可以在chrome检查器中看到并使用window.Foo。我如何得到真实的"模块中的窗口对象?谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

你应该使用类似下面的模式,Foo将附加到this在所有环境中指向的任何对象。与在浏览器中一样,它会将其添加到window

(function(global) {
    global.Foo = function() {
         return {};
    }
})(this);                  

答案 1 :(得分:0)

想出来!该项目是镀铬扩展,它正在沙箱中。它与Browserify无关。