AngularJS:指令不会捕获广播事件

时间:2017-01-24 17:33:43

标签: javascript angularjs events

在我的角度模块(角度1.3)中,我有一些嵌套的指令(都带有隔离的范围):

<directive1>
   <directive2></directive2>
</directive1>

当我试图通过$scope.$broadcast()(我甚至试过$ rootScope)在conetoller inits后面的directive1点击事件时,directive2没有对它做出反应,我有一种感觉&#39;,广播事件在directive2中的处理程序之前触发。也许有一些最佳实践如何调试角度事件或者我在这里错过了什么?

这两个指令的代码非常标准:

angular
    .module('z.builder')
    .controller('BuilderController', BuilderController);

function TTEBuilderController($scope, $rootScope) {
    var ctrl = this;
     //......some logic here//
    $rootScope.$broadcast('loaded');

}

第二指令

angular
    .module('z.Builder')
    .controller('ConfigurationController', ConfigurationController);

function ConfigurationController($scope, $rootScope) {
    var vm = this;

    $rootScope.$on('loaded', function() {
        console.log('loaded!')
    });

0 个答案:

没有答案