【问题标题】:Can not use keyword 'await' outside an async function in a custom React hook [duplicate]不能在自定义 React 钩子中的异步函数之外使用关键字“等待”[重复]
【发布时间】:2020-04-15 19:06:35
【问题描述】:

我正在尝试创建一个自定义挂钩,但我不断收到 getToken() 函数的错误:

不能在异步函数之外使用关键字 'await'

我该如何解决这个问题?

export const useExistingToken = async () => {
    const [existingToken, setExistingToken] = useState('')
    const [tokenLocallyExists, tokenLocalCheck] = useState()
    useEffect(() => {
        if (!tokenLocallyExists) {
            const token = await getToken() // issue here
            setExistingToken(token)
        }
    }, [])

    return [existingToken, tokenLocalCheck]
}

【问题讨论】:

    标签: javascript reactjs react-native async-await react-hooks


    【解决方案1】:

    您不能将 async/await 放在 useEffect 方法上。即使你在 useEffect 周围包装了一个函数,它也不会使用 async/await。

    看看这个吧!

    https://github.com/facebook/react/issues/14326

    【讨论】:

      猜你喜欢
      • 2020-01-22
      • 1970-01-01
      • 1970-01-01
      • 2020-02-17
      • 1970-01-01
      • 2021-09-05
      • 1970-01-01
      • 2021-06-04
      • 2020-08-27
      相关资源
      最近更新 更多