我在所有Backbone集合的超类上创建了这个函数:
updateModel: function (_id, updateInfo) {
for (var i = 0; i < this.models.length; i++) {
var model = this.models[i];
if (String(model.get('_id')) == String(_id)) {
model.set(updateInfo);
break;
}
}
},
该函数的目的是在给定服务器定义的_id
属性的情况下简单地更新模型。
我写的函数有用吗?或者我应该简单地使用它:
collection.add(model, {merge: true});
答案 0 :(得分:1)
试试这个:
updateModel: function (_id, updateInfo) {
this.some(function (oneModelInfo) {
if (_id == oneModelInfo._id) {
oneModelInfo.set(updateInfo);
return true;
}
});
},