Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
只是想找出使用 useReducer + 上下文挂钩的最佳实践。
哪个是更好的做法?
我更喜欢每个提供者使用一个减速器。如果有多种情况需要全局状态,我通常会创建多个提供者。(例如,一个通知提供者和一个待办事项列表提供者或类似的东西。通常他们的域是解耦的,组件不需要访问这两个提供者)
对于每个全局状态,我通常也会自己创建两个提供者。一个用于来自 reducer 的实际状态,一个用于调度。这样,当状态改变时,只想触发动作的组件不会更新。尽管对于大多数 React 应用程序而言,这实际上是不必要的优化。