簡體   English   中英

如何在 backbone.js 中獲得特定的 model

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM