8.4 UserContext 만들고 로그인 사용자 분기 처리하기

    사용자의 인증 상태를 다양한 화면의 리액트 컴포넌트에서 쉽게 조회할 수 있도록 Context API를 사용해 AuthContext를 만들어주겠습니다.

    이 Context는 매우 간단합니다. useState를 사용해 user 상태를 관리하며, usersetUser를 Context의 value로 사용합니다.

    contexts/UserContext.js

    import React, {useContext, createContext, useState} from 'react';
    
    const UserContext = createContext(null);
    
    export function UserContextProvider({children}) {
      const [user, setUser] = useState(null);
      return (
        <UserContext.Provider
          children={children}
          value={{
            user,
            setUser,
          }}
        />
      );
    }
    
    export function useUserContext() {
      const userContext = useContext(UserContext);
      if (!userContext) {
        throw new Error('UserContext.Provider is not found');
      }
      return userContext;
    }
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.