profile
FE Developer

[내일배움캠프 WIL] 12주차

a = b === c firebase 로그인 유지 로그인 페이지 측에서 Login 함수에 setPersistence(auth, browserSessionPersistence)를 사용하면 로그인 성공시 session 스토리지에 session 인증정보가 저장되도록 하였다. 그리고 각 페이지에 useEffect와 auth.onAuthStateChanged()로 마운트 시 로그인 여부에 따라 로그인 state가 바뀌도록 하고, state에 따라 jsx단에서 보이는 요소들이 다르도록 삼항 연산자로 구현해보았다. 그리고 로그인 이후 다른 페이지에서 새로고침하면 ![](https://velog.velcdn.com/images/dwg2022/post/11ddf5e2-9644-46cc-8cc7-75fc14

2023년 1월 21일
·
0개의 댓글
·

[내일배움캠프 TIL] 60일차

오늘 새로 배운 것 narrowing을 통한 에러 해결 사례 원인 문제의 발생 원인은 firebase의 currentUser 타입은 firebase에 이미 만들어진 auth-public.d.ts파일에서 readonly User | null 타입으로 지정되어있다. 하지만 firebase의 사용자 제거(회원탈퇴) 함수는 User타입만을 인자로 받는다. User타입의 인자가 들어와야할 자리에 User | null 타입의 인자가 들어오니 에러가 나는 것이었다. 해결과정 아직 익숙치 않은 typescript로 프로젝트를 처음 시작했고 firebase에도 당연히 typescript를 처음 적용해보게 되었다. 그래서 일단 type을 지정해주어야되나해서 any타입으로도 지정해보고 했는데 타입 지정으로는 해결하지 못했었다. 좀 더 자세히 보니 currentUser와 deleteUser의 인자 타입은 이미 정해져있고 그래서 해결방법을 찾다가 팀원의 도움으로 if문을

2023년 1월 20일
·
0개의 댓글
·