AngularJs:是否可以从主控制器触发一个指令方法

时间:2014-02-11 14:55:20

标签: javascript angularjs

我有一个角度指令,即

.directive('multiselect', ['$document', '$rootScope', function ($document, $rootScope)
{
     link: function (scope, element, attr) {
        scope.toggleCheck = function (item) {
        ....
        }
     }
}

我需要从主控制器触发scope.toggleCheck

1 个答案:

答案 0 :(得分:1)

您可以通过$rootScope.$broadcast()发送的事件实现这一目标。

您的主控制器可以:

$rootScope.$broadcast('triggerToggle');

在你的指令中,你可以这样做:

scope.$on('triggerToggle', function(){
    // run your internal directive code here
});