我正在查看别人写的这段代码。这看起来像是一个糟糕的代码味道。在$ rootScope下复制对angular的引用的有效理由是什么?
$rootScope._ = $window._;
$rootScope.angular = $window.angular;
答案 0 :(得分:1)
根据经验,在AngularJS中将任何内容分配给$rootScope
通常 。这就像在大多数语言中分配一个全局变量 - 当你发现自己这样做时,你应该停下来思考是否有另一种方法来解决你的问题。他们往往会使代码变得混乱而无法遵循。
另一方面......这只是额外的奇怪,绝对是一个糟糕的代码味道。我无法看到一个有效的原因,为什么你会在$rootScope
上抛出已经全局可访问的变量,特别是将angular
本身扔到$rootScope
上。