我正在嘗試使用Angular通過接口管理標籤列表。使用Angular語法刪除陣列中的對象
我有一個服務器拉我的範圍內的標籤列表。
app.js
$scope.Tags = [{id:1, name:'tag1', desc:'desc1'}, {id:2, name:'tag2', desc:'desc2'}, {id:3, name:'tag3', desc:'desc1'}, ...];
和我使用的HTML代碼,這個塊顯示列表:
tags.html
<ul>
<li ng-repeat="T in Tags">{{ T.name }}</li>
</ul>
當我點擊<li>
元素我想要刪除關聯的Tag對象。 後來我提高我的代碼如下:
tags.html
<ul>
<li
ng-repeat="T in Tags"
ng-click="removeTag($event);"
>{{ T.name }}</li>
</ul>
app.js
$scope.removeTag = function (event) {
// the following code is just used to remove the Tag from the list
// using underscore.js
$scope.Tags = _($scope.Tags).filter(function (t) {
return t.name !== event.srcElement.innerHTML
});
}
這是工作,但我希望有一個較輕的方式執行相同的任務。而且我對Angular的經驗還很有限。
類似的東西將是巨大的:
<ul>
<li ng-repeat="T in Tags" ng-click="Tags - T">{{ T.name }}</li>
<!-- this is more like a dream tho -->
</ul>
這個驚人的作品。有這樣的一些缺點嗎? – user544262772 2015-03-31 16:54:35
@발렌텐唯一的缺點是如果你有其他邏輯運行,而不是簡單地從數組中移除元素(如調用服務器端API)。 – 2015-03-31 16:56:45
@JustinNiessner我沒有,那麼我想這在使用這種語法沒有錯。我喜歡它 – user544262772 2015-03-31 16:57:26