首页 > 解决方案 > 更新 Redux 的 store 后,React.js 什么时候重新渲染组件?

问题描述

当我dispatch在 Redux 中执行操作时,商店会按顺序更新,即如果我有以下 thunk:

function action(data) {
   return function(dispatch) {
      dispatch(anotherAction(data));
      dispatch(anotherActionAfterTheAboveUpdatesTheStore(data));
   };
}

存储是按顺序更新的,这意味着在dispatch(anotherAction(data));存储已经更改之后。

但是,我知道在内部,当我们调度一个动作时,会通过它的异步方法react-redux重新渲染一个连接的组件。setState因此,我在理解 React 何时使用新数据有效地重新渲染组件时遇到了一些困难。

它是否以某种方式保证render()在每个 Redux 之后调用dispatch

感谢您的关注。

标签: javascriptreactjsreduxredux-thunk

解决方案


它实际上与redux没有太大关系。Redux 只是更新状态,react-redux 将部分状态作为 props传递。现在由 React 来检测一些 props 已经改变并运行它的生命周期方法并在必要时重新渲染。


推荐阅读