【发布时间】:2021-10-22 17:22:54
【问题描述】:
如果是这样,这会导致性能问题吗?
其次
有没有办法专门调用一个reducer而不调用所有100个reducer ?
【问题讨论】:
标签: redux react-redux reducers redux-reducers
如果是这样,这会导致性能问题吗?
其次
有没有办法专门调用一个reducer而不调用所有100个reducer ?
【问题讨论】:
标签: redux react-redux reducers redux-reducers
Redux 常见问题解答中专门回答了这个问题:
https://redux.js.org/faq/performance#wont-calling-all-my-reducers-for-each-action-be-slow
需要注意的是,一个 Redux 存储实际上只有一个 reducer 函数。
但是,即使您碰巧将许多不同的减速器功能组合在一起,并且即使状态嵌套很深,减速器的速度也不太可能成为问题。 JavaScript 引擎每秒能够运行大量的函数调用,并且您的大多数 reducer 可能只是使用 switch 语句并默认返回现有状态以响应大多数操作。
另外,“调用reducer”在这里是错误的心智模型。动作就像正在广播的“事件”——你永远不会直接“调用减速器”:
https://redux.js.org/style-guide/style-guide#model-actions-as-events-not-setters
【讨论】: