我正在研究存储 UI 状态的最佳方式是什么,我应该使用 Redux-UI ( https://github.com/tonyhb/redux-ui ) 之类的东西来存储/管理 UI 状态吗?还是我应该为 UI 创建自己的操作/减速器?
另外...当我存储了 UI 状态时,如何确保浏览器刷新后,我仍然拥有完全相同的页面状态?就像普通网页将包含从服务器获取的数据一样。
我有实施了 thunk 中间磨损的 Redux 和一个商店。到目前为止,我在过去的几个月里一直在使用 React。
谢谢!昆顿
我正在研究存储 UI 状态的最佳方式是什么,我应该使用 Redux-UI ( https://github.com/tonyhb/redux-ui ) 之类的东西来存储/管理 UI 状态吗?还是我应该为 UI 创建自己的操作/减速器?
另外...当我存储了 UI 状态时,如何确保浏览器刷新后,我仍然拥有完全相同的页面状态?就像普通网页将包含从服务器获取的数据一样。
我有实施了 thunk 中间磨损的 Redux 和一个商店。到目前为止,我在过去的几个月里一直在使用 React。
谢谢!昆顿
我们的团队为此花了几天时间。我们想要 UI 状态而不是将这些状态放入 Redux 的状态树的原因可能是:
这些 UI 状态仅与极少数组件相关。但有时我们需要在它们之间共享这些状态。例如,一个 Button 控制一个 Modal,它们都需要读/写 'isModalOpen' 状态。
这些状态不是数据,它们是 UI 首选项,可以在卸载组件时将它们重置为默认值。将它们保留在单个 Redux 存储中听起来像是在污染状态树。
我们尝试了:
但是,所有这些都涉及必须使用/实现自定义中间件、动作和减速器。难的。
最后,我制作了react-provide-state。它真的很好用。它的唯一缺点是您无法在浏览器控制台中轻松看到 ui 状态,例如 Redux 树中的状态。并且您只能通过 UI(用户操作事件回调)更新状态。这是公平的,这是我们正在谈论的 UI 状态。