🤸‍♀️ 내 프로젝트/pilzagenda

    [ 리팩토링 ] firebase upload / download 로직 분리하기

    0. 현재 상태 firebase 로직이 모든 페이지에 따로따로 존재하는 상태. ToDo를 관리하는 페이지에서도 firebase에서 로직을 받고 / 업로드하고 Calendar... Project 컴포넌트에서도 동일하다. 이 로직을 AuthService처럼 하나로 묶게 되면 유지보수하기 쉽지 않을까? ✍ FireStore.ts로 로직 관리하기 📌 FireStore.ts downloadData(progressRef: any) { onSnapshot(progressRef, (querySnapshot: any) => { querySnapshot.forEach(async (doc: any) => { if (doc.data().goals) { console.log(doc.data().goals); return awa..

    [ 리팩토링 ] Auth_service 관련 동작 분리하기 + 컴포넌트 결합하기

    0. 현재 상태 유저를 로그인하거나 로그아웃하거나, 유저의 존재를 확인하는 모든 함수들이 각 컴포넌트마다 뿔뿔이 흩어져있다. 중복되는 코드도 많아지고 비효율적이라 리팩토링을 다짐 하지만 어렵다... 알려줘... 아무튼 시작 ✍ AuthService.tsx으로 로직 관리하기 AuthService.js 유저의 존재를 확인할 수 있는 class를 만들어 유저 관련 함수를 집어넣었다. logout할 때마다 Calendar.tsx파일에서 에러가 발생했다 Uncaught FirebaseError: Function collection() cannot be called with an empty path. firebase에 저장된 일정 정보를 가져올 때 사용하는 collection함수는 empty path에서 사용할 수..