简体   繁体   English

$rootScope.$broadcast 没有被触发

[英]$rootScope.$broadcast not getting triggered

I have the following code:我有以下代码:

Test.html:测试.html:

<div>Test</div>
<dta-feed my-list="myList"></dta-feed>

TestCtrl.js测试Ctrl.js

 angular.element(document).ready(function () {
  $scope.loadData();                
 });

 $scope.loadData = function () {
  $rootScope.$broadcast("testEvent");               
 }

dtafeed-directive.js dtafeed-directive.js

$scope.$on("testEvent", function () {
  console.log('Testing broadcast event');           
});

Can anyone help me to know h谁能帮我知道h

Would you like to try?你想试一下吗?

Test.html:测试.html:

<div>Test</div>
<dta-feed my-list="myList"></dta-feed>

TestCtrl.js测试Ctrl.js

 angular.element(document).ready(function () {
  $scope.loadData();                
 });

 $scope.loadData = function () {
  $rootScope.$broadcast("testEvent");               
 }

dtafeed-directive.js dtafeed-directive.js

var ev = $rootScope.$on("testEvent", function () {
  console.log('Testing broadcast event');           
});

$scope.$on('$destroy', function () {
    ev();
});

This link helped me to fix the issue Broadcast not received in directive此链接帮助我解决了指令中未收到广播的问题

$timeout(function(){
    $scope.$broadcast('testEvent');
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM