当react状态中的值为空时,我想触发API执行一些操作,react状态挂钩中有没有方法实现这一点?
如果您使用的是功能组件,则可以使用;useEffect";具有适当依赖关系的钩子。类基础组件,您可以选择(如果我正确理解您的情况(类似于";componentWillUnmount((";方法
您可以有一个以状态为依赖项的useEffect
挂钩,在其中您可以检查状态是否为空并采取相应行动。
示例:
const [state, setState] = useState([]);
useEffect(() => {
if (state.length !== 0) {
return;
}
// Can make your API call here (preferably call a function that does it)
// and then set the state.
setState(...);
}, [state]);
useEffect
是一个钩子,它接受回调作为第一个参数,接受依赖数组作为第二个参数
每当数组中的任何依赖项发生更改时,回调将在重新渲染时执行。
- 注意:这只与功能组件相关,对于基于类的组件,我们有
componentDidUpdate
生命周期挂钩