我嘗試根據自定義指令的屬性值更新元素內容。下面的代碼執行得很好,但只在網站加載一次。屬性值的動態更新不會觸發任何事件。我做錯了什麼?
標記NG-重複內(在比賽中賽):使用
屬性名稱作爲字符串解決了這個問題,但造成的:
<div ng-tipp-result="[[getIconClass(match)]]"></div>
指令:
myApp.directive('ngTippResult', function() {
return {
restrict: 'A',
link: function(scope, elem, attrs) {
var content = "s";
scope.$watch(attrs.ngTippResult, function(v){
switch(v){
case 1: content = '<i class="icon-circle"></i>';break;
case 2: content = '<i class="icon-X"></i>';break;
case 3: content = '<i class="icon-Y"></i>';break;
case 4: content = '<i class="icon-Z"></i>';break;
case 5: content = '<i class="icon-ok"></i>';break;
case 6: content = '<i class="icon-minus"></i>';break;
}
elem.html(content);
});
}
};
});
編輯另外,我遇到了上面代碼的infinit摘要循環。
<li ng-repeat="match in matches">
<i class="pull-right [[getIconClass(match)]]"></i>
</li>
getIconClass是一種控制器方法,根據匹配返回值從1到6。