在一个控制器中我做:
$rootScope.$emit("newAction", {});
在我做的另一个控制器中:
$rootScope.$on('newAction', function() {
vm.newAction (...);
vm.newAction (...);
vm.newAction (...);
vm.newAction (...);
vm.newAction (...);
vm.newAction (...);
});
我的问题是多次调用$ rootScope。$ on。我不知道为什么。
如果有人提示...... 感谢
答案 0 :(得分:15)
$rootScope
侦听器不会自动销毁。您需要使用$destroy
销毁它。
var customeEventListener = $rootScope.$on('newAction', function() {
vm.newAction (...);
vm.newAction (...);
vm.newAction (...);
vm.newAction (...);
vm.newAction (...);
vm.newAction (...);
});
$scope.$on('$destroy', function() {
customeEventListener();
});