在我的一个 Angular 控制器中,我有这个:
// controller A
$rootScope.$on("myEventFire", function(event, reload) {
someAction();
});
在另一个控制器中,我有这个:
// controller B
$scope.openList = function(page) {
$rootScope.$broadcast('myEventFire', 1);
}
现在,这是一个单页应用程序。当我最初去控制器 A 并尝试触发此事件时,someAction()将被执行一次。如果我离开并再次回到控制器 A 并做同样的事情,someAction()会执行两次。如果我再做一次,它会发生 3 次,依此类推。我在这里做错了什么?