首页 > 解决方案 > 如何在使用钩子同时更新 2 个状态时添加回调?

问题描述

当超过 2 个状态同时更新时如何添加回调。请检查类组件的波纹管代码,当状态将成功更新时,我会在其中添加回调。

this.setState({liveMatches: finalMatches, isLoading: false, runningFetch: false, disbleSportsSwitch:false}, ()=> this.startListener());

但是现在我要在功能组件内的钩子中转换这段代码。

Useeffect(()=>{
  startListener());
},[liveMatches,isLoading,runningFetch,disbleSportsSwitch])

请检查它是否正确?

标签: reactjsreact-nativereact-hooks

解决方案


您上面提供的代码将在每次状态更改时添加一个回调。(请正确提供依赖数组)

但是您可以通过引入您的自定义钩子来识别导致依赖的效果,如果发现 2 个或多个 2 已更改,则添加您的回调


推荐阅读