我正在向我的骨干集合中添加一个项目,如下所示:
item = existingItem.clone()
myCollection.add(item)
我已经像这样覆盖了 MyCollection 中的同步:
sync: function() {
console.log('sync is called')
}
但是似乎在添加之后没有调用同步-它成功执行并触发“添加”事件。我错过了什么吗?还是这是正确的行为?
我正在向我的骨干集合中添加一个项目,如下所示:
item = existingItem.clone()
myCollection.add(item)
我已经像这样覆盖了 MyCollection 中的同步:
sync: function() {
console.log('sync is called')
}
但是似乎在添加之后没有调用同步-它成功执行并触发“添加”事件。我错过了什么吗?还是这是正确的行为?
你想要的是myCollection.create(item)
.
Collection.create 返回模型,但在某些情况下,您可能需要访问 xhr 对象。在这种情况下,您可以这样做:
// add the model to the collection first
// so that model.url() will reference the collection's URL
myCollection.add(myModel)
// now save. this will trigger a POST to the collection URL
// save() returns the xhr so we can attach .done/.fail handlers
myModel.save()
.done(function(res) {
console.log('it worked')
})
.fail(function(err) {
console.log('it failed')
// might be a good idea to remove the model from the collection
// since it's not on the server
myCollection.remove(myModel)
})