현재 리액트에 BaaS인 파이어베이스를 연결하여 프로젝트를 진행중인데, 버전9에 맞게 코드를 짜려니 에러가 매 순간순간 터져서 내 멘탈도 터지는 중이다.
수강중인 강의에 나온 코드는 버전8 기준이라, 버전9에 맞추어 코드를 바꿔줘야 하는데 구글링했을 때 정보도 별로 없고(업데이트 된지 얼마 안되었나봄) 공식문서는 왜 이렇게 못 알아보겠는건지.....=_=
아무튼 post 추가 기능을 구현하는 것에서 막혀서,
엄청난 삽질 그리고 팀원들의 도움을 받으며 해결을 하였다..
addDoc 관련 사용법을 짤막하게나마 올려본다.
버전8을 사용하면 코드가 저런식인데, 이렇게 작성 후 개발자도구에서 확인해보면
Uncaught Typeerror: _shared_firebase_WEBPACK_IMPORTED_MODULE_0__.firestore.collection is not a function
이런 보기싫은 에러가 나를 반겨준다.
버전 안맞아서 나는 오류라고 100% 확신 후 구글링을 죽어라 해보고 공식문서도 봤지만 도저히 해결할 수 없어 어쩔 수 없이 팀원의 도움을 받았는데, async await를 사용해야 하는 것이 관건이었다.
그렇게 해서 수정된 코드
저장 후 확인해 보니 저렇게 게시글 내용 작성 후 작성 버튼을 눌렀을 때 데이터가 잘 들어온다.
솔직히 나도 명쾌하게 해결 방법을 설명 못하겠지만 공식문서 중 이 부분을 참고하면 좋을 것 같다.
(그냥 버전8으로 할걸 내가 무슨 부귀영화를 누리겠다고 9로 해서 이 고생을 하는지 ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ 파이어베이스 미워,,)