: Home 컴포넌트는 여러 기능을 포함하고 있어서 코드의 양이 엄청 많고, 가독성 떨어지고, 유지보수 좋지않음
-> 기능 단위로 코드를 잘라 컴포넌트로 나누기
: Home 컴포넌트의 form 영역 부분 삭제하고, NweetFactory 컴포넌트를 Home 컴포넌트에 포함시키자.
: span이나 form element 옮기기 (로그인 폼 Auth에서 분리하기)
: refreshUser 함수가 문제
-> user가 없는 경우 userObj를 업데이트하는 로직이 없어.
-> user가 없어지면, userObj를 비워야 함 (현재는 새로고침으로 강제로 비워야만 로그아웃 되는 것처럼 보임)
-> app.js의 else 로직에 userObj를 비워줄 함수를 추가하면 됨
: package.json 인식해서 호스팅 진행
-> package.json 수정해야 해
-> 깃허브 주소 필요 (git remote -v 명령어로 알 수 있음)
-> 이 주소 참고해서 파일 수정
-> 명령어 입력!
-> 호스팅 성공!
-> 그리고 위에 입력했던 링크로 들어가면 된다. 그런데, 처음에는 404에러가 나는 것이다. 그 이유는 지금껏 했던 프로젝트를 push하지 않았기 때문!! 다시 push하고 deploy했더니 성공~
-> 성공!
-> 배포 성공했으니, 로그인이나 나머지 기능들 제대로 동작하는 지 점검
-> 소셜 로그인 시, 갑자기 오류가?!
-> 파이어베이스 보안이 강해서 나타남.
-> 파이어베이스는 자신이 알고 있는 주소만 접근할 수 있게 해줌.
-> 오류를 해석해보면, 도메인을 등록하면됨!
: 등록된 주소만 파이어베이스를 쓸 수 있게 하곘다.
-> 인증 권한 문제를 해결해보자.
-> 승인된 도메인 클릭!
-> http제외하고!
-> 그럼 이제 이렇게 로그인이 잘 되는 것을 알 수 있다.
-> firestore의 규칙 탭
-> 5월 31일까지 누구나 데이터베이스에 접근할 수 있다는 것을 의미
-> 로그인한 사람에게만 권한을 줘보자!
-> 이렇게! 로그인하지 않은 사람은 권한을 주지 않겠다는 의미
: 스토리지에도 권한을 설정해보자
-> storage의 rules에 들어가서 위와 같이 코드를 수정해주자
: 앞서, 깃허브에 비밀키를 노출시키지 않기위한 작업을 수행
-> 이번엔 비밀키가 우리의 누이터에서만 동작하도록 설정
-> 승인된 도메인 목록에 있는 파이어베이스 주소와 깃허브 주소 필요 (복사해두기)
⭕ 정리:
이 장에서는 package.json을 설정해서 npm run deploy를 통해 배포하고, 파이어스토어, 스토리지, 비밀키 보안을 설정하는 방법을 익힌 장이다.