내 로그인 페이지에 대한 컨텍스트 후크를 설정하려고 합니다. 저는 타이프스크립트를 사용하고 있습니다. 컨텍스트 후크를 시작했지만 유형 선언에 문제가 있습니다. setUser를 사용하려고 하면 다음 오류가 나타납니다. 속성 'setUser'가 '{}' 유형에 존재하지 않습니다.
이것은 지금까지의 내 컨텍스트 후크입니다.
으아아아제 로그인 코드입니다.
import { createContext, ReactNode, useEffect, useState } from "react" interface Props { children?: ReactNode } export const UserContext = createContext({}) export function UserContextProvider({children}: Props) { const [user, setUser] = useState(null) return ( <UserContext.Provider value={{user, setUser}}> {children} </UserContext.Provider> ) }
P粉9981006482024-03-27 00:40:12
사용자 정의 속성이 없는 빈 개체인 UserContext
变量指定类型。因为您在 createContext
中为其指定了 {}
参数,所以 Typescript 假定上下文的类型为 React.Context<{}>
。因此,当您尝试使用上下文对象时,您会得到一个 {}
에는
먼저 새 인터페이스를 정의하겠습니다. 원하는 경우 직접 입력해도 됩니다.
으아아아
UserContext
이 중 일부의 경우 나중에 null 검사를 작성해야 합니다. 자세한 내용은 여기
를 참조하세요. 🎜