[英]How to get particular model in backbone.js
當我在主干中創建了一個用戶集合時,我在用戶集合中添加了幾個用戶並添加了它。現在我想從我的集合中刪除具有特定用戶名的特定用戶。
所以我所做的是我在我的收藏中創建了一個方法:
user: function(username) {
return this.filter(function(user){ return user.get('username')==username; });
}
然后我像這樣訪問它:
App.Users.user(data.username);
然后為了刪除一個特定的元素我做:
App.Users.remove(App.Users.user(data.user));
為了更新用戶數據,我這樣做:
App.Users.user(data.username)[0].set(data)
請檢查我的代碼,並建議我是否可以通過任何方式改進它。
使用 App.Models.Users 代替 App.Users。 這將增加可讀性。 其他一切對我來說似乎都很好。
如果用戶名是唯一的,那么您應該使用 this.detect() 而不是 this.filter()。 它會稍微快一點,而且我相信還會返回單個 model 而不是數組...
如果用戶名不是唯一的,請忽略此...
此外,您應該使用 '===' 而不是 '=='。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.