git에 놀러오세용
🥳 WITHWITH shoppingmall project
라우터 설정하기
✅ 라우터
테일윈드 설정
✅ tailwind
firebase 설정
✅ fire base docs
** 개인정보는 .env에 꼭 저장해서 process.env.로 불러오기
--
For each of your app's pages that need information about the signed-in user, attach an observer to the global authentication object. This observer gets called whenever the user's sign-in state changes.
Attach the observer using the onAuthStateChanged method. When a user successfully signs in, you can get information about the user in the observer.
유저가 성공적으로 사인인 했다면 옵저버를 통해 유저의 정보를 얻을 수 있다.
useEffectd로 onAuthStateCahgned를 설정해서 새로고침해도 옵저버가 유저 상태 유지하게 할 수 있도록 한다.
--
🍯 어드민 키는 user를 콘솔에 찍었을 때 나오는 Uid로 설정!
✅ firebase / val() method
You can extract the contents of the snapshot as a JavaScript object by calling the val() method.
val()를 통해 스탭샷의 콘텐츠를 자바스크립트 오브젝트로 뽑아낼 수 있다.
--
기본 구성 요소
//AuthContext.js//
import { createContext, useContext } from "react";
const AuthContext = createContext();
export function AuthContextProvider({ children }) {
return (
<AuthContext.Provider
value={전역에 공유하고싶은 싶은 value}
>
{children}
</AuthContext.Provider>
);
}
export function useAuthContext() {
return useContext(AuthContext);
}
내용 공유가 필요한 곳에 provider씌우기
//App.js//
<HeaderSection/>
<AuthContextProvider value={value}>
<MainSection/>
</AuthContextProvider>
--
🍯 replace 설정으로 admin이 아닌 사용자 히스토리에 기록 남기지 않게 하기
🍯 state설정으로 정보 넘기기 (필요한 곳에서 location()으로 정보 받기)