首页 > 解决方案 > 我在什么时候更新反应状态而不是重新调用新数据?

问题描述

这是一个通用问题,我明白这一点,但我一直在互联网上寻找关于何时可以更新我的状态而不是实际进行新的 api 调用以获取新数据的经验法则。

例如,我收到一个项目列表,我通过 ui 添加一个项目,它会调用 api 将该项目保存在数据库中。我可以将它连接到 state.items,但现在如果我回到项目列表,我应该为列表进行新的 api 调用,还是只使用我的 state.items?

我担心的是,我在什么时候拨打新电话从数据库中获取项目?如果两个人正在编辑同一个项目列表,如果我不拨打新电话,那么一个人不同步怎么样。什么是一般做法?

标签: reactjs

解决方案


我也是 reactjs 的新手。但我会尝试用我对 reactjs 概念和您的用例的理解来回答您的问题。

  1. 当您进行 API 调用以保存到 DB 时,您只需将新项目连接到 state.items。如果您正在遍历您的项目并呈现它,那么连接新项目应该不会造成任何问题,因为 reactjs 只会呈现更改的内容,只要您提供密钥作为每个项目的一些唯一值。
  2. 如果您想在多个用户之间保持一致性,那么我建议您使用像 firebase 这样的实时数据库,它具有在对数据库中的项目进行某些更改时触发的触发器。使用这些触发器,您可以更新各个用户的状态。

参考:

火力基地 反应火力基地

如果您需要更多信息,请告诉我。


推荐阅读