tab
directive
在tabset
directive
内使用
无法在newvar
tabset
link
的变量tabset
plunkr中提供了此问题的演示here
为什么我无法通过newvar
功能访问link
?
HTML代码段
<tab heading="tab1">
<p>This is tab1</p>
</tab>
<tab heading="tab2">
<p>This is tab2</p>
</tab>
</tabset>
JS代码段
.directive('tabset',function(){
return{
restrict:'E',
scope:{
newvar:"@"
},
transclude:true,
templateUrl:'tabset.html',
bindToController:true,
controllerAs:'tabset',
controller:function($scope){
var self = this;
self.tabs = []
self.add = function add(tab){
self.tabs.push(tab);
if(self.tabs.length === 1){
tab.active = true;
}
}
self.click = function click(selectedTab){
angular.forEach(self.tabs,function(tab){
if(tab.active && tab !== selectedTab)
tab.active = false;
})
selectedTab.active = true;
}
},
link:function(scope,elem,attr){
console.log(scope.newvar);
scope.newvar = attr.newvar;
}
}
})