在注册 $on 监听事件时,需要先注销之前已注册的事件。可以使用 $destroy 事件来实现。
示例代码:
// 注册监听事件 var listener = $rootScope.$on('myEvent', function (event, data) { console.log('Event: ' + event.name + ', Data: ' + data); });
// 在控制器销毁时注销监听事件 $scope.$on('$destroy', function () { listener(); // 注销事件 });