배운 것, 공부한 것, 메모할 것
1. 컴활
- 2과목 다풀고, 이기적 빈출 인강 1강 듣기
2. Redux
- thunk 및 액션 생성 함수 다시 복습하기
3. React
- React 앱 테스팅
1. 나 혼자 보려고 쓰는 Redux 로직
1. App.js에서 매 dispatch마다 fetchCartData()(카트 데이터 Firebase에서 가져오는 Redux 함수)를 실행할 수 있도록 useEffect 설정
1-1. fetchCartData() 함수는
- Firebase API와 연결한 다음 성공했을 경우 현재 비어있는 장바구니에 해당 Firebase 백엔드 데이터를 덮어씌우는 것. 실패했다면 실패 상태를 띄워주는 notification return
즉 fetchCartData는 현재 Firebase 데이터베이스의 값을 로컬의 장바구니에 덮어씌우는 함수이며, 성공했을 경우 덮어씌우고 실패했다면 실패 알림을 띄워주도록 한 것.
2. 장바구니 내용물이 바뀌었을 때, 매 dispatch마다 useSelector로 불러온 cart의 changed 인자를 확인하여 true면 sendCartData(cart)를 실행할 수 있도록 useEffect를 설정
2-1. sendCartData(cart) 함수는
- 전송중이라는 알림을 우선 띄운 다음, Firebase API로 PUT(body에 현재 장바구니 상태값을 넣고)을 날린 다음 try, catch에 따라 각각 성공, 실패 알림을 띄워주는 함수.
'today i learned' 카테고리의 다른 글
| today i learned 1/21~1/23 (0) | 2022.01.24 |
|---|---|
| today i learned 1/20: TypeScript Class (0) | 2022.01.20 |
| today i learned 1/18: TypeScript with ES6, Redux (0) | 2022.01.18 |
| today i learned 1/17: TypeScript 기본 타입, tsconfig.json (0) | 2022.01.17 |
| today i learned 1/16 (0) | 2022.01.17 |