2024-03-27.md
๐กDIL: ๋ชจ๋ ๋ฆฌ์กํธ ๋ฅ ๋ค์ด๋ธ, 4์ฃผ์ฐจ-3
์คํฐ๋: ์๊ฐ CS, https://github.com/monthly-cs/2024-03-modern-react-deep-dive
์ค๋ ์งํ: ๊ฐ์ธ๊ณต๋ถ
์ฝ๋์๋ฐ: ๋งํฌ
DIL-week4-3_2024-03-27
| DIL ์ฃผ์ฐจ | ๋ฒ์ | ๋ด์ฉ | ์ค๋์ฐจ ์ง๋ | | -------- | ------ | ------------------------------- | ----------- | | 4์ฃผ์ฐจ | 4, 8์ฅ | SSR๊ณผ ESlint, ํ ์คํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ | 311p~314p |
์ค๋ ์ฝ์ ๋ด์ฉ์ markdown์ผ๋ก ๊ฐ๋จํ ๋ฉ๋ชจ
์ฝ์ ์๊ฐ: 9์20๋ถ~10์๋ฐ, 11์๋ฐ~12์๋ฐ
Next.js ํบ์๋ณด๊ธฐ
Data Fetching
getStaticPaths์ getStaticProps
- ์ ์ ์ผ๋ก ๊ฒฐ์ ๋ ํ์ด์ง
- CMS(Contents Management System) ์ฝํ ์ธ ๊ด๋ฆฌ ์์คํ , ๋ธ๋ก๊ทธ, ๊ฒ์ํ
- ์ ์ ์ธ HTML ํ์ด์ง๋ฅผ ๋ง๋ ๋ค. ์ด๋์? ์๋ฒ์์
- next build ์, html๊ณผ json ์ค๋น
| ํจ์ | ๊ธฐ๋ฅ | ์ฐธ๊ณ | | -------------- | ----------------------------------------------- | ---------------------------------------------------------- | | getStaticPaths | ์ ๊ทผ ๊ฐ๋ฅํ ์ฃผ์๋ฅผ ๋ฐฐ์ด๋ก ๋ฐํ | ๊ทธ ์ธ์ ํ์ด์ง๋ 404 | | getStaticProps | ์ ๊ทผ ๊ฐ๋ฅํ ์ฃผ์๋ก ์์ฒญ์ด ์์ ๋, ๋ฐํํ props | params๋ฅผ ๊ธฐ์ค์ผ๋ก props๋ก ์ ๋ฌํ ์์ฒญ/์๋ต์ ์๋ฒ์์ ์ฒ๋ฆฌ |
ํด๋ ๊ตฌ์กฐ ์์
| ํด๋ | url | | ---------------------- | ------------------------------------------------- | | /[year]/[โฆslugs] | /2024/03/react_week4-3 | | /pages/[id] | /pages/11 | | /tags/[tag]/pages/[id] | /tags/javascript/pages/1 /tags/react/pages/1 |
- paths์ ๋ฏธ๋ฆฌ ๋น๋ํ paths ๊ธฐ์ฌ
fallback: true
- fallback ์ปดํฌ๋ํธ ๋ณด์ฌ์ฃผ๊ธฐ
- blocking
- ๋ก๋ฉx ๋น๋ ์๋ฃ๊น์ง ์ฌ์ฉ์ ๋๊ธฐ
getServerSideProps ๋น๊ต -> ๋ด์ผ ์ด์ด์
| ํจ์ | ๊ธฐ๋ฅ | ์ฐธ๊ณ | ๋น๋ ์ ์์ฑ | | ------------------ | ----------------------------------------------- | ---------------------------------------------------------- | ------------ | | getStaticPaths | ์ ๊ทผ ๊ฐ๋ฅํ ์ฃผ์๋ฅผ ๋ฐฐ์ด๋ก ๋ฐํ | ๊ทธ ์ธ์ ํ์ด์ง๋ 404 | html | | getStaticProps | ์ ๊ทผ ๊ฐ๋ฅํ ์ฃผ์๋ก ์์ฒญ์ด ์์ ๋, ๋ฐํํ props | params๋ฅผ ๊ธฐ์ค์ผ๋ก props๋ก ์ ๋ฌํ ์์ฒญ/์๋ต์ ์๋ฒ์์ ์ฒ๋ฆฌ | json | | getServerSideProps | ์๋ฒ์์ ์คํ๋๋ ํจ์ | ํ์ด์ง ์ง์ ์ ๋ฌด์กฐ๊ฑด ์คํ | js |