[英]React Hook “useSubscribe” cannot be called inside a callback. React Hooks must be called in a React function component
[英]Error: React Hook "useLogout" cannot be called inside a callback. Apollo
我不確定這個錯誤是什么以及如何解決它?
代碼:
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 Hooks 必須在 React 函數組件或自定義 React Hook 函數中調用 react-hooks/rules-of-hooks
React aslo 識別函數名稱以“use”開頭作為自定義鈎子,所以我需要更改useLogout => doLogout
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.