gpt4 book ai didi

javascript - 如何知道 Backbone 正面模型何时发生变化?

转载 作者:行者123 更新时间:2023-12-02 14:44:31 25 4
gpt4 key购买 nike

我可能不明白一些 Backbone 逻辑,所以希望你能给我解释一下。

当我创建模型时,向其传递 ID,然后获取它,Backbone 会将模型标记为已更改(调用 changedAttributes() 返回所有对象属性)。

当您修改正面的对象属性时,它还会将模型标记为已更改,changedAttributes() 仅返回此属性。

那么如何区分前端所做的更改(因此未持久化)和来自服务器的更改? (有什么具体事件吗?)

我问这个问题的原因是,如果有一些前端更改或用户退出,我想一次又一次地保存我的模型。

[编辑]我的场景是(我使用 Angular):

我的页面的 URL 格式为:object/#/:id

我的页面是对象的编辑器(一些输入)。

当 URL 中的 ID 发生变化时,我会从服务器获取相应的对象。但如果已经有一些东西(比如用户手动更改 ID),我需要先保存对对象所做的所有操作。

最佳答案

Backbone 中没有真正跟踪模型/集合更改,无法告诉您发生了什么更改或是否发生了更改。您必须自己完成此操作。

您当然可以检查当前更改循环的更改。因此,在事件处理程序中,您可以使用 model.on("change", () => ...) 。您可能想要实现一个处理程序函数,用于跟踪更改,并可能在将其保存到服务器后重置它

关于javascript - 如何知道 Backbone 正面模型何时发生变化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36723516/

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