javascript – scope.$on无法更新指令范围

嘿,我的指令有些问题.我无法使用scope.$on更新我的作用域内部指令.有我的代码示例.

function linkdir1(scope){
        element.bind('click',function(){
            scope.$emit('someEvent',scope.data,scope.data2); //emit to parent directive
        });
}

function parentDir($scope){
         $scope.$on('someEvent',function(e,data,data2){
           $scope.$broadcast('broadcastEvent',data+data2);
        });
  }

function linkdir2(scope){

          scope.$on('broadcastEvent',function(e,data){ // i can see this data but can't update scope then.
            data == 0 ? scope.show = false : scope.show = true;
        });  
  }
<div parent-dir>
  <div dir-one></div>
  <div dir-two></div>
</div>

我尝试使用范围.$watch但这不起作用.
感谢帮助.

最佳答案 欢迎.我想我会把它作为一个答案,所以其他人很容易找到它.如果它可以接受它,它会很好,如果它解决了你的问题. 🙂

scope.$apply(); 

在事件处理程序的末尾.

点赞