//動作しないangular.jsで$上の私は//の$放送と$上を理解したいのブラウザで起こるコードは何も下に実行するが、コードが
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script>
var app = angular.module("myApp", [])
.controller("ParentCtrl", function firstCtrl($scope)
{
$scope.$broadcast('someEvent', [1,2,3]);
})
.controller("ChildCtrl", function secondCtrl($scope)
{
$scope.$on('someEvent', function(event, mass) { console.log(mass); });
});
</script>
助けてください動作していない場合には
HTML
<html>
<div ng-app="myApp">
<div ng-controller="ParentCtrl">
<h2>Parent</h2>
<label ng-model="mass"/></label>
<hr/>
<div ng-controller="ChildCtrl">
<h2>Child</h2>
<label ng-model="mass"/></label>
</div>
</div>
</html>
私の推測では、親コントローラが作成され、子コントローラが作成され、リスナが追加される前に*ブロードキャストが送信されています。 '$ timeout'でブロードキャストをラップしようとすると、' $ timeout(()=> $ scope。$ broadcast( 'someEvent'、[1,2,3])、1000) ' – Phil
あなたは同期コードちょうどそれを$ scope変数に代入して子$スコープ – YOU