Pra*_*bha 24 angularjs rootscope
点击按钮时广播事件: -
$scope.onButtonClick = function(){
$rootScope.$broadcast('onButtonClick');
}
Run Code Online (Sandbox Code Playgroud)
并在另一个控制器中捕捉事件: -
$rootScope.$on('onButtonClick',function(event){
alert("catched");
console.log(event);
});
Run Code Online (Sandbox Code Playgroud)
但即使只开了一次,它也抓了两次.这是为什么?
Joh*_*nes 10
如果您广播事件$rootScope
,则可以在每个控制器上捕获事件$scope
.IMO你不应该抓住这个事件$rootScope
.
$scope.$on('onButtonClick',function(event){
alert("catched");
console.log(event);
});
Run Code Online (Sandbox Code Playgroud)
我创建了一个plunker展示,它显示它完全按预期工作.Plunker
您可能有多个同一控制器实例,您可以在其中捕获事件.请检查这是Chandermani建议的.
归档时间: |
|
查看次数: |
13871 次 |
最近记录: |