我是否需要手动撤消AngularJS中的任何手表?

时间:2016-02-10 16:40:34

标签: javascript angularjs

实例化指令时,会配置监视。

scope.$watch('propertyName', function(value) {});

当指令被销毁时,我是否已做任何事情来防止内存泄漏?

1 个答案:

答案 0 :(得分:1)

否 - 当关联的scope被摧毁时,angular会负责清理手表。

但是如果你想要清理手表; $ watch函数返回一个函数,该函数将在调用时取消注册表。

var unregister = $scope.$watch('myVar', function() { /* ... */ });
unregister();