1

例如,当需要并与 webpack 或任何其他模块捆绑器捆绑时,是否可以防止角度实例注入全局(窗口)范围?

我发现 angular npm 包中的当前主要 javascript 文件是:

require('./angular');
module.exports = angular;

我的 webpack 入口文件内容是:

import angular from 'angular';

// my custom code goes here

因此,主要的 webpack 任务是防止将变量泄漏到全局范围,但是如果我尝试像这样在 Chrome DevTools 中记录角度:

console.log(angular); // => Object {version: Object, callbacks: Object}

我会看到,那个角度实例被注入了。有什么想法可以防止这种情况吗?

附加信息:
Angular.js 版本 - 1.6.0-rc.0
Webpack 版本 - 2.1.0-beta.27

更新。

4

1 回答 1

0

看起来它被硬编码到已发布的 NPM 代码中,以将全局 Angular 变量分配给window对象,无论如何:

angular           = window.angular || (window.angular = {})

所以没有直接的方法来阻止它的发生。您可以delete window.angular在加载它之后随时使用,但没有任何不会影响库的承诺。

于 2016-11-21T01:49:43.823 回答