我有一个相当简单的 Angular 指令,它有自己的模板。但是,如果admin === true
,我想修改某些元素的一些属性,例如使它们ui-sortable
。
app.directive('members',function(){
return {
restrict: 'A',
template: '<h4>{{title}}</h4>'+
'admin? <span>false</span>' +
'<ul ng-model="list">' +
'<li ng-repeat="member in list">' +
' {{member.name}}' +
'</li>'+
'</ul>',
transclude:true,
scope: {title:'@',list:'=',admin:'@'},
link: function ($scope,$element,attrs) {
if ($scope.admin) {
$element.find("span").html("true");
$element.find("ul").attr("ui-sortable","");
}
}
};
})
我使用$element.find("span")
just 来测试它是否找到它。admin
从元素的属性中被拉到隔离范围内,但它仍然没有通过。
小提琴在这里:http: //jsfiddle.net/zqM4Z/4/
似乎隔离范围在函数中不可link
用?