我如何将一个状态更新和一个用钩子引用API数据的调用链接起来



我有一个函数,当表单值更改时会调用它。一旦它改变了,我想从API中重新获取数据。我以前的setState在课堂上就是这样做的。

我想使用钩子,但我发现当您有useState集合函数时,没有promise回调。

updateState = name => ({ target: { value } }) => {
this.setState({ [name]: value }, () => {
this.doConversion();
});
};

如果我有像useEffect()这样的调用fetchData();的东西,考虑到最新React版本中的钩子优点,重写上面的内容会是什么样的优雅方式?

这似乎是一个常见的用例。

我认为您可以利用钩子的dependencies

const [dependency,setDependency] = useState({})
useEffect(()=>{
doConversion();
},[dependency]) // RUN useEffect WHEN DEPEDENCY CHANGES
const someHandler = () =>{
setDependency({}) // UPDATE STATE
}

相关内容

最新更新