반응형
그리고 별도의 컨텍스트 관리 컴포넌트를 만들고 싶다고 해보자
더 많은 로직을 가져오고 싶다면
import React, { useState } from 'react';
const AuthContext = React.createContext({
isLoggedIn: false,
onLogout: () => { },
onLogin: (email, password) => { }
});
export const AuthContextProvider = (props) => {
const [isLoggedIn, setIsLoggedIn] = useState(false);
const logoutHandler = () => {
setIsLoggedIn(false);
}
const loginHandler = () => {
setIsLoggedIn(true);
}
return <AuthContext.Provider
value={{ isLoggedIn: isLoggedIn, onLogout: logoutHandler, onLogin: loginHandler }}
>
{props.children}
</AuthContext.Provider>
}
export default AuthContext;
Login.js 일부
import Button from '../UI/Button/Button';
import AuthContext from '../store/auth-context';
const Login = () => {
const authCtx = useContext(AuthContext);
}
아래와 같이 auth-context 만을 모두 담아서 사용할 수 있다
이해는 잘 되지만 사용하기 전에 한 번 더 사용법을 복습해봐야 할 것 같다
반응형
'온라인 강의 > React 완벽 가이드 [Udemy]' 카테고리의 다른 글
136. "Hooks의 규칙" 배우기 (0) | 2023.06.14 |
---|---|
135. 리액트 컨텍스트 제한 (0) | 2023.06.14 |
133. 컨텍스트를 동적으로 만들기 (0) | 2023.06.14 |
132. useContext 훅으로 컨텍스트에 탭핑(tapping)하기 (0) | 2023.06.14 |
131. 리액트 컨텍스트 API 사용 (0) | 2023.06.14 |