John Papa建议在处理模块时链接而不是创建变量(参见the modules section):
避免使用变量,而是使用带有getter语法的链接
他解释说:
这会产生更易读的代码并避免可变冲突或 泄漏。
我更喜欢将模块放入变量然后设置它:
var app = angular.module('mymodule');
app.config(...);
app.controller(...);
链接不太舒服:
angular.module('mymodule').config(...).controller(...);
由于我使用立即调用函数表达式(IIFE)编码,我很确定变量冲突永远不会发生。
但是,泄漏怎么样?有人可以解释或演示Angular应用程序如何泄漏,因为我正在获取模块并将其存储在var中?
答案 0 :(得分:1)
通常它不会导致内存泄漏。
此处被覆盖的模块对象泄漏到全局范围,无法进行垃圾回收。
<a>