Czy istnieje sposób na sprawdzenie wartości zmiany wyrażenia funkcji w dyrektywie AngularJS? Mam następujący kod HTML i JavaScript, a interpolacja {{editable()}}
w szablonie pokazuje, że wartość jest równa true, podczas gdy sprawdzanie elementu HTML w Chrome pokazuje, że contenteditable
ma wartość false.Oglądanie wartości funkcji w dyrektywie AngularJS
Wszelkie sugestie dotyczące sposobu, w jaki mogę obejrzeć wartość tej funkcji, zmieniają się i odpowiednio aktualizuję element attr? Czy istnieje lepszy sposób na osiągnięcie tego celu (nadal chciałbym ocenić funkcję)?
HTML:
<h4 editable="account.hasRole('ROLE_ADMIN')"
content="doc.heading"></h4>
Javascript:
mod
.directive(
'editable',
function() {
return {
restrict : 'A',
template : '<button class="btn pull-right"><i class="icon-pencil"></i></button>{{content}} ({{editable()}})',
scope : {
'content' : '=',
'editable' : '&'
},
link : function(scope, element, attrs) {
scope.$watch('editable', function(newValue) {
element.attr('contenteditable', newValue());
});
}
};
});