【问题标题】:How to manage state of react + apollo app如何管理 react + apollo 应用程序的状态
【发布时间】:2018-09-04 22:48:57
【问题描述】:

我将使用 apollo js 库从 graphql api 获取数据,但正如我从文档中看到的那样,它应该通过 props 直接在组件中插入获取数据。所以我的问题是我的应用程序是否需要一些状态管理工具,比如 redux?如果是,我该如何以或多或少的惯用方式做到这一点?

【问题讨论】:

  • 一般来说,如果你使用graphql和apollo,你不需要任何状态管理“工具”。组件的状态已经足够好了。但是有时例如。您拥有高级多页表单,可以更轻松地将数据存储在例如。还原商店。但是你可以在没有状态管理库的情况下做到这一点。
  • 是不是因为apollo的缓存机制我不需要状态?
  • 恕我直言,主要是因为以非常好的方式将查询结果作为道具传递给组件,而且还有缓存机制等。 readFragment 可以替代 mapStateToProps
  • 感谢您的澄清。

标签: reactjs redux react-redux apollo react-apollo


【解决方案1】:

从 Apollo Client v3 开始,这个问题的答案是:

使用 Apollo 客户端的反应变量,它像 Redux 一样不可变:https://www.apollographql.com/docs/react/local-state/managing-state-with-field-policies/#storing-local-state-in-reactive-variables

【讨论】:

  • 这篇文章看起来不像是试图回答这个问题。这里的每一篇文章都应该明确地尝试回答这个问题;如果您有批评或需要澄清问题或其他答案,您可以在其下方直接post a comment(如这个)。请删除此答案并创建评论或新问题。请参阅:Ask questions, get answers, no distractions
猜你喜欢
  • 2021-07-18
  • 2020-12-26
  • 2019-03-25
  • 1970-01-01
  • 2020-08-23
  • 2013-09-16
  • 1970-01-01
  • 2020-07-13
  • 2021-05-09
相关资源
最近更新 更多