반응형
1. 프로젝트 셋업 skip
2. React router dom 및 styled-component 셋업 + 기본 라우팅 시스템 적용
- yarn add react-router-dom
- import { BrowserRouter, Routes, Route } from 'react-router-dom'
- BrowserRouter 로 Routes 와 Route 를 감싼다
- Route path="/" elements={<Home /> /}
- Route path="/dex" elements={<Dex /> /} - Home 에서 Dex 로 이동하는 버튼 만들기
- useNavigate 를 import 하고 onClick={()=> navigate("/dex")} 로 이동
3. Dashboard 컴포넌트 구현
- Dashboard.jsx 와 PokemonList.jsx 컴포넌트 생성
- 기본 예시 코드 가져와서 붙혀넣고 Dashboard
4. PokemonList, PokemonCard 구현
- Dex 페이지에 mock 데이터 가져오기
- PokemonList 컴포넌트에서 map 으로 PokemonCard 를 뿌려주려면 PokemonCard 컴포넌트 생성
- PokemonCard 에서 출력될 내용들을 순서대로 깔아주기. img_url, korean_name, description 등
- PokemonCard 에서 만든 내용들을 PokemonList 에 넣어주기 map 으로 넣기로 했으니까
밑에 key 로 id 먼저 설정해주고, pokemon은 pokemon
5. Dashboard 로 포켓몬 추가하기 로직
- Dex 페이지에 addPokemon 함수 만들기
- selectedPokemon 에 포켓몬이 없는 경우에만 포켓몬이 추가가 되어야 하니 조건문으로
selectedPokemon을 some 이나 includes 로 순회하여 지금 추가할 pokemon 이 있으면 alert 로
이미 선택된 포켓몬이 있다고 띄워주고 없다면 setSelectedPokemon 으로 ...selectedPokemon, pokemon 추가
6. 대시보드에서 선택된 포켓몬 삭제하기 로직
7. 디테일 페이지 연결
8. ContextAPI 를 이용한 리팩토링
시간 부족해서 못함..
반응형
'코딩 > React 본 캠프' 카테고리의 다른 글
[본 캠프 33일차] 팀 프로젝트 1일차 (0) | 2024.08.30 |
---|---|
[본 캠프 32일차] 팀 프로젝트 시작 (0) | 2024.08.28 |
[본 캠프 30일차] 개인 과제 최종 (0) | 2024.08.27 |
[본 캠프 29일차] React 스탠다드반 강의 + 추가 복습 + 과제 (0) | 2024.08.23 |
[본 캠프 28일차] React 숙련 강의 마무리 + 개인과제 (0) | 2024.08.22 |