首页 > 解决方案 > 如何在 redux 的 DISpatch 中使用回调?

问题描述

我在看redux的文档,文档中没有回调字段。但是 setState 方法中有回调。调度方法不负责 setState 功能吗?如何在 redux 的调度方法中进行回调?

标签: reactjsredux

解决方案


React 之所以setState有回调参数,是因为 React 状态更新是异步的。需要执行取决于更新状态的代码:

this.setState(..., () => {
  console.log('state updated');
});

这不是 Redux 的情况。dispatch是同步的,因此在那里进行回调是没有意义的。预计在dispatch调用后立即调度操作:

dispatch(...);
console.log('store updated');

调度方法不负责 setState 功能吗?

它不是。Redux 存储是 React 组件状态的替代方案。它不在setState内部使用。


推荐阅读