[英]AngularJS: $rootScope.$on not receiving msg sent via $rootScope.$broadcast on v1.2 of angular
關於廣播和接收廣播,角度1.2 rc2和角度1.2之間有什么變化?
我認為我認為是$ watch中控制器的標准廣播
$scope.$watch('changedRequest', function(newValue, oldValue) {
$rootScope.$broadcast('onTestingMe')
});
我嘗試在另一個控制器中接收它
$rootScope.$on("onTestingMe", function () {
alert('I am received');
});
廣播似乎工作,但我從來沒有得到任何東西到達$。
我在$ rootScope上設置了$ on和$ broadcast。 我的手表是在美元范圍內,但這應該不是問題。
我在兩個控制器中注入了$ rootScope。
Chrome控制台中沒有收到任何錯誤。
我迷路了,有什么想法嗎?
我確實注意到在RC3上也發生了同樣的情況,但我只是把它放到RC上,所以我回到了RC2並且認為我會等待1.2發布....但同樣的情況正在發生..
編輯
我能看到的唯一不同的是我使用的是ng-include
<div ng-include="template.url" ng-controller="ItemBarCtrl"></div>
也許它的渲染速度不夠快? 由於在加載文檔時發送了msg,並且控制器ItemBarCtrl具有$ on ....
我會嘗試做一些測試......奇怪的問題!
這是一個老問題,但我遇到了它,正在尋找類似的問題。 嘗試將$broadcast
包裝在$timeout
函數中,延遲時間為100左右。 如果$on
會觸發,那么我可能會遇到同樣的問題,因為在$on
准備就緒之前, $on
$broadcast
會觸發。 我還在調查修復問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.