我有一个控制个性化多选的指令。有时从主控制器我想清除所有多选。我有多选值填充“filter
”双向变量,我可以从那里删除内容,但是当我这样做时,我还必须更改一些样式和其他内容。换句话说:我必须从属于控制器的按钮调用属于指令的方法。是,即使更多钞票具有该数据结构?:如何从角度上的控制器调用指令的功能
(顺便说一句,我发现了其他问题,并例子,但它们的指令并没有自己的范围。)
function MultiselectDirective($http, $sce) {
return {
restrict: 'E',
replace: true,
templateUrl: 'temp.html',
scope: {
filter: "=",
name: "@",
url: "@"
},
link: function(scope, element, attrs){
//do stuff
scope.function_i_need_to_call = function(){
//updates directtive template styles
}
}
}
}
定义为$父范围功能,例如:。范围内指令$ parent.function_i_need_to_call =函数(){..}),然后调用与$范围控制器相同的方法。 function_i_need_to_call() – saikumar
您可以'scope。$ watch'' filter',然后根据当前值调用函数。 –
@saikumar但如果该指令在多个元素中工作会怎样? – Vandervals