【发布时间】:2021-07-23 23:24:30
【问题描述】:
react-navigation 的文档有一个特定的部分 Can I store the navigation state in Redux too?。
上面写着:
这是不可能的。我们不支持它,因为它太容易让自己陷入困境并减慢/破坏您的应用程序。
我相信 react-navigation 团队和社区已经对此进行了深入研究。在 SO 上出现诸如 this one 之类的问题表明,这 在某些时候得到了支持,但由于某种原因肯定被普遍认为是不好的。
我想知道的是:究竟为什么“在 Redux 中存储导航状态”是一种不好的做法?
答案可以是:
- 在 Redux 中存储导航状态的特定场景引入了额外的错误/复杂性
- nav state 与 Redux store 不兼容的理论解释(例如“很难使其不可变”)
- 来自 GitHub 问题的链接/摘录,这些问题展示了如何准确地决定建议不要在 Redux 中存储导航状态
- ...任何其他会让读者说“哦,快,我怎么能不考虑这个”:)
我无法通过快速搜索找到一个好的解释,我认为这个问题对于像我这样好奇的人来说是一个很好的参考。我必须承认,我经常发现自己很想为此实施一些解决方法,只是将所有内容存储在一个地方(例如,为了调试目的能够“重放”)。
【问题讨论】:
标签: react-native redux react-redux react-navigation react-state-management