[英]AngularJS and $rootScope
我试图了解Angular中scopes
的生命周期,并且想知道是否使用$rootScope.$on
或$rootScope.$watch
是否超出范围(传统意义上)?
Angular有没有任何类型的垃圾收集或类似的东西?
你是否担心释放对象($ scopes)?
简短而高雅的答案是angular检查你的模块( angular.module('myapp')
)来创建一个复杂的依赖树。 然后解析DOM以识别“ng”标签或其他自定义指令,这些指令经历编译阶段(构建自定义HTML)和链接阶段(生成范围并将其附加到该元素)。 这大约是真实情况的1/100,但这是一个开始。
Angular确实执行垃圾收集,但几乎所有这些都发生在幕后。 当计划删除$ scope时,它做的最后一件事就是触发$ scope。$ destroy(),你可以用$scope.$on('$destroy', function() { .. })
挂钩$scope.$on('$destroy', function() { .. })
执行任何清理。 然后,在大多数情况下,你不必担心清理或“释放”任何东西,因为角度也会照顾到它。
:编辑:
我也偶然发现了这个问题,这最好地解释了它 - 理解范围 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.