๊ตฌํ ๋๊ธฐ ํ์๊ฐ, ๊ธ์์ ์ ํ, ์ด๋ฉ์ผ ํ์, ์ ํ๋ฒํธ ํ์ ๋ฑ ๊ฐ๋จํ ๊ฒ์ฌ๋ง ํ์ํ๋ค. joi๋ yup ๊ฐ์ ์ธ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์์ด ๊ตฌํํ๊ณ ์ถ๋ค. (๋ณต์กํ ๊ธฐ๋ฅ์ ํ์ ์๋ค.) ๋ฉ์๋ ์ฒด์ด๋์ ์ง์ ๊ตฌํํด๋ณด๊ณ ์ถ๋ค ์ด๋ฌํ ๋๊ธฐ๋ก ์ ๋ ฅ์ ์ ํจ์ฑ์ ๊ฒ์ฌํ๋ ์ ํธ๋ฆฌํฐ๋ฅผ ์ง์ ๊ตฌํํด ๋ณด๊ธฐ๋ก ํ๋ค. ์๊ตฌ์ฌํญ ๋ฉ์๋ ์ฒด์ด๋์ผ๋ก ์ฒด์ด๋ ๋ ์์๋๋ก ์ ํจ์ฑ์ ๊ฒ์ฆํ๋ค. ํ์ฅ์ฑ์ ์ํด ์ง์ ์ ์ํ ๋ฉ์๋๋ก ์ ํจ์ฑ์ ๊ฒ์ฆํ ์ ์์ด์ผ ํ๋ค. ์ ๋ ฅ ํ๋ ์ปดํฌ๋ํธ์์ ์ ๋ ฅ ์๋ง๋ค ์ ํจ์ฑ์ ์๋์ผ๋ก ๊ฒ์ฆํ๋ค. ๊ตฌํํ๊ธฐ Validator ํด๋์ค ์ ํจ์ฑ์ ๊ฒ์ฆํ๋ Validator ํด๋์ค๋ฅผ ์์ฑํ๋ค. ํด๋์ค์ ๋ฉ์๋๋ก ์ ํจ์ฑ์ ๊ฒ์ฆํ๋ ๋ก์ง์ ๊ตฌํํ๋ค. ๊ฐ ๋ฉ์๋๋ ํญ์ this๋ฅผ ๋ฆฌํดํด์ ์ฒด์ด๋์ด ๊ฐ๋ฅํ๋๋ก ํ๋ค. type ..
Next.js 13 ๋ฒ์ ์์ ์ถ๊ฐ๋ 4๊ฐ์ง ๊ธฐ๋ฅ Next.js 13 ๋ฒ์ ์์๋ App Directory๊ฐ ์ถ๊ฐ๋์๋ค. ์ด์ ๋ฒ์ ์์ pages ํด๋์ ๋์๋๋ ๊ฒ์ผ๋ก, ๋ค์๊ณผ ๊ฐ์ ๊ธฐ๋ฅ์ ์ง์ํ๋ค. Layouts: state๋ฅผ ์ ์งํ๊ณ ๋น์ฉ์ด ๋ง์ด ๋๋ ๋ฆฌ๋ ๋๋ง์ ํผํ๋ฉด์ ๋ผ์ฐํธ ์ฌ์ด์ UI๋ฅผ ์ฝ๊ฒ ๊ณต์ ํ ์ ์์. Server Components: ์๋ฒ์์ ๋ ๋๋ง๋๋ ์ปดํฌ๋ํธ๋ฅผ ๋ช ์์ ์ผ๋ก ๊ตฌํํ ์ ์์. Streaming: ์ ์ ๋ ๋ก๋ฉ ์ํ๋ฅผ ์ฆ์ ํ์ธํ ์ ์์ผ๋ฉฐ, UI๊ฐ ๋จ๊ณ์ ์ผ๋ก ๋ ๋๋ง๋จ. ์ํ๋ค๋ฉด App Directory ๋ด์ ์ปดํฌ๋ํธ ํ์ผ, ํ ์คํธ ํ์ผ, ์คํ์ผ ํ์ผ ๋ฑ ๋ผ์ฐํธ๊ฐ ์๋ ํ์ผ์ด ์กด์ฌํด๋ ๋๋ค. ์ด์ ๋ฒ์ ์์ pages ํด๋ ์์๋ ๋ฌด์กฐ๊ฑด NextPage Dynamic Rout..
2021๋ ์ React๋ฅผ ์ด์ฉํ ํ๋ก์ ํธ๋ฅผ ์งํํ์๋ค. (๋ด ์ฒซ ํ๋ก ํธ์๋ ํ๋ก์ ํธ) ๊ทธ๋ ์ดํ๋ก ํ์ฌ์ ์ ์ฌํ๋ฉด์ Next.js๋ก๋ง ๊ฐ๋ฐํ๋ค ๋ณด๋ react-router-dom๋ฅผ ์ฌ์ฉํ ์ผ์ด ์์๋ค. Next.js๋ pages ํด๋๋ฅผ ์ด์ฉํด ์๋์ผ๋ก ๋ผ์ฐํธ๋ฅผ ๋ง๋ค์ด์ฃผ๊ธฐ ๋๋ฌธ์ด๋ค. ๋ฆฌ์กํธ ๋ฉํ ๋ง์ ์งํํ๋ฉด์ 2๋ ๋ง์ ๊ธฐ์ต ์ ํธ์ react-router-dom์ ๋ค์ ์ฌ์ฉํด ๋ณด๊ฒ ๋์๋ค. 2๋ ์ ์ ์ฌ์ฉํ๋ ๋ฒ์ ์ 5.2.0์ด๊ณ ์ด๋ฒ์ ์ฌ์ฉํ๊ฒ ๋ ๋ฒ์ ์ 6.10.0์ด๋ค. v6๋ก ์ ๋ฐ์ดํธ๋๋ฉด์ ์ธํฐํ์ด์ค๊ฐ ์์ ํ ๋ฐ๋์๋ค. react-router-dom BroswerRouter๋ก ๋ผ์ฐํฐ ๊ตฌํํ๊ธฐ v5์์ ๋ผ์ฐํ ๊ตฌํํ๋ ๋ฐฉ๋ฒ ๊ธฐ์กด v5์์๋ ๋ผ๋ ์ปดํฌ๋ํธ๊ฐ ์กด์ฌํ๋ค. path prop์ `/posts/:i..