본문 바로가기
React

React Context Provider Login

by 바나냥 2020. 8. 18.

GlobalContext.js

const GlobalContext = createContext({
  state: {
    isLoggedIn: false,
  },
  actions: {
    setIsLoggedIn: () => {},
  },
});

const GlobalProvider = ({ children }) => {
  const [isLoggedIn, setIsLoggedIn] = useState();
  const value = {
    state: {
      isLoggedIn,
    },
    actions: { setIsLoggedIn },
  };
  return (
    <GlobalContext.Provider value={value}>{children}</GlobalContext.Provider>
  );
};

 

App.js

if (!isLoggedIn) {
    return <Login />;
  } else {
    return (
    ...

 

Login.js

const Login = () => {
  const {
    state: { isLoggedIn },
    actions: { setIsLoggedIn },
  } = useContext(GlobalContext);
  
  ...
  
  const handleSubmit = () => {
    setIsLoggedIn(true);
  };

'React' 카테고리의 다른 글

setUrl / handleUrl  (0) 2020.08.26
[React 스터디] 2 : 접근성  (0) 2020.08.21
[React 스터디] 1 : 주요 개념  (0) 2020.08.16
조건부 렌더링  (0) 2020.08.10
Route Component에 props 전달하기  (0) 2020.08.10

댓글