【发布时间】:2020-07-07 06:50:46
【问题描述】:
我不确定这个错误是什么以及如何解决它?
代码:
import React, { useContext, useEffect } from 'react'
import { Layout, Loading, LangContext } from '@frontend'
import { gql, useMutation } from '@apollo/client'
const LogoutMutation = gql`
mutation LogoutMutation {
logout
}
`
const Logout = (): JSX.Element => {
const [useLogout] = useMutation<{ logout: boolean }>(LogoutMutation)
useEffect(() => {
useLogout().then(({ data }) => {
if (data?.logout === true) window.location.href = '/'
})
}, [useLogout])
return null
}
export default Logout
错误:
16:5 错误 React Hook "useLogout" 不能在内部调用 打回来。必须在 React 函数组件中调用 React Hooks 或 一个自定义的 React Hook 函数 react-hooks/rules-of-hooks
【问题讨论】:
标签: reactjs apollo apollo-client