gpt4 book ai didi

javascript - Backbone.js 模型删除失败

转载 作者:数据小太阳 更新时间:2023-10-29 05:19:35 25 4
gpt4 key购买 nike

所以现在当我销毁模型并且服务器返回错误时,销毁事件无论如何都会被触发并且模型数据会被重置..

有什么办法可以防止这种情况发生吗?

最佳答案

您可以将 {wait: true} 作为选项传递给 destroy(),这会导致它在从模型中删除模型之前等待来自服务器的响应收藏。

在将 View 绑定(bind)到事件方面,您应该分别处理 removedestroy 事件,因为 remove 事件将被触发当服务器成功返回时,但如果服务器返回错误则永远不会。

或者,您可以将 error 处理程序传递给 model.destroy,如果服务器因任何原因发生故障,您可以使用它来恢复模型。要么简单地将模型添加回您的集合(如果您有),要么使数据从服务器重新加载(这可能是更安全的选择)。

请注意,使用此方法时,remove 事件仍会触发,并且在您放回模型时紧随其后的是 add 事件。

thing.destroy({error: function(model, response) {
// put the thing back in the collection, or cause the collection to reload
}});

您提到正在重置模型数据;我相信上面错误处理程序中的 model 参数接收到原始模型,因此您仍然可以访问它的数据。

有关更多信息,请参阅主干文档 - http://backbonejs.org/#Model-destroy

关于javascript - Backbone.js 模型删除失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13593508/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com