gpt4 book ai didi

javascript - 主干模型同步状态

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:35:41 28 4
gpt4 key购买 nike

在我的应用中,用户创建了一个包含大量模型的集合。由于我不想向服务器发出大量请求,因此我创建了一个自定义函数,可以将这些模型批量保存到服务器。然后服务器响应所有模型,包括它们的 id,然后将其设置为各种模型。到目前为止一切正常。

我现在遇到的问题是 Backbone 不知道此时所有模型都已与服务器同步。所以稍后在应用程序中,当我在每个模型上调用 model.save() 时,它会再次将每个模型发送到服务器(这应该只是自批处理操作以来更改的模型)。我怎样才能让 Backbone 知道所有模型都已同步?我正在查看 'changed' 和 'hasChanged' 属性,但不太确定是否应该操纵这些属性(我猜不是)。

最佳答案

Backbone 不包含自上次与服务器同步以来跟踪更改属性的功能。

changedhasChanged 不处理自上次与服务器同步后更改的属性。

您必须创建自己的机制来跟踪模型的状态:

  1. 每个模型都应该有一个 hasChangedSinceLastSync 标志。
  2. 每个模型都应该绑定(bind) (.on) 到它自己的 change 事件并将标志设置为 true。
  3. 重写 sync 方法并在数据从服务器返回后将标志设置为 false(用于读取/创建/更新)。

关于javascript - 主干模型同步状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13660808/

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