gpt4 book ai didi

reactjs - React TypeScript 16.8 如何使 useEffect() 异步

转载 作者:行者123 更新时间:2023-12-04 11:04:17 26 4
gpt4 key购买 nike

为什么不能useEffect()使用异步等待?

const Home: React.FC = () => {

useEffect(async () => {
console.log(await ecc.randomKey())
}, [])

return (
...

我得到的错误是

Argument of type '() => Promise' is not assignable to parameter of type 'EffectCallback'.


Type 'Promise' is not assignable to type 'void | (() => void | undefined)'.


Type 'Promise' is not assignable to type '() => void | undefined'.


Type 'Promise' provides no match for the signature '(): void | undefined'.ts(2345)

最佳答案

不建议将效果声明为异步函数。
但是您可以在效果中调用异步函数,如下所示:

useEffect(() => {
const genRandomKey = async () => {
console.log(await ecc.randomKey())
};

genRandomKey();
}, []);

更多信息: React Hooks Fetch Data

关于reactjs - React TypeScript 16.8 如何使 useEffect() 异步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57238928/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com