Browserify窗口对象没有全局变量



我需要添加一个形式为的全局库

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

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

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

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

想明白了!这个项目是一个铬合金的扩展,它被沙盒化了。这与Browserify无关。

相关内容

  • 没有找到相关文章