Reactjs 在redux中如何在分派中使用回调?
我正在查看redux的文档,文档中没有回调字段。但setState方法中存在回调。调度方法不负责设置状态功能吗?如何在redux的dispatch method中有回调?redux中的dispatch method不能有回调。但是,Redux为您提供了store.subscribe() 使用此函数,您可以将事件侦听器添加到存储中,在状态更改时将触发该存储,因此您可以执行以下操作:Reactjs 在redux中如何在分派中使用回调?,reactjs,redux,Reactjs,Redux,我正在查看redux的文档,文档中没有回调字段。但setState方法中存在回调。调度方法不负责设置状态功能吗?如何在redux的dispatch method中有回调?redux中的dispatch method不能有回调。但是,Redux为您提供了store.subscribe() 使用此函数,您可以将事件侦听器添加到存储中,在状态更改时将触发该存储,因此您可以执行以下操作: const callback = () => { //check the store for your s
const callback = () => {
//check the store for your specific state change
//perform some action
}
store.subscribe(callback)
React
setState
具有回调参数的原因是React状态更新是异步的。需要执行依赖于更新状态的代码:
this.setState(..., () => {
console.log('state updated');
});
Redux的情况并非如此<代码>调度是同步的,因此在那里进行回调是没有意义的。预计在调用dispatch
后立即调度操作:
dispatch(...);
console.log('store updated');
调度方法不负责设置状态功能吗
事实并非如此。Redux存储是反应组件状态的一种替代方法。它不在内部使用
setState
。dispatch使用params触发reducer操作,reducer操作反过来更新state对象。