我需要在 setState 完成后解决 promise ,但在 react 钩子(Hook)中 setState (useState) 没有回调函数。
这段代码的 react 钩子(Hook)版本:
handleBeforeGetContent = () => {
return new Promise((resolve, reject) => {
this.setState({ key: 'updatedValue' }, () => resolve());
});
}
最佳答案
您可以在 useEffect 中使用 async 函数,如下所示。
const [isLoadingComplete, setLoadingComplete] = React.useState(false);
React.useEffect(() => {
async function loadDataAsync() {
try {
await loadAsyncSomething();
} catch (e) {
console.warn(e);
} finally {
setLoadingComplete(true);
}
}
loadDataAsync();
}, []);
关于reactjs - react hooks setState完成后如何解决promise?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58520155/