Releases: june-by/Blog
Releases ยท june-by/Blog
v5.0 contentlayer์ ๋งํฌ๋ค์ด ๊ธฐ๋ฐ ๊ตฌ์กฐ ์์
v4.0 App Router ๋ง์ด๊ทธ๋ ์ด์
- Pages Router ๊ธฐ๋ฐ์์ App Router ๊ธฐ๋ฐ์ผ๋ก ๋ง์ด๊ทธ๋ ์ด์
- https://byjuun.com/posts/React/app-router-migration-1
- https://byjuun.com/posts/React/app-router-migration-2
v3.7 ์ํ๊ด๋ฆฌ ๋ก์ง Context, Reducer ๊ธฐ๋ฐ์ผ๋ก ์์
- ๊ฒ์๊ธ Form ๋ฐ์ดํฐ ์ํ ๊ด๋ฆฌ ๋ก์ง : ์์ ์ปดํฌ๋ํธ์์ ์ ์ฒด์ํ๋ฅผ ๊ฐ์ง๊ณ propsํํ๋ก ๋ด๋ฆฌ๋ ๊ฒ์๊ธ ์์ฑ,์์ ํ์ด์ง์ ๊ฒ์๊ธ ํผ ๋ฐ์ดํฐ์ ๊ด๋ จ ๋ก์ง์ Context, Reducer๊ธฐ๋ฐ์ผ๋ก ์์ โ https://github.com/BY-juun/Blog/blob/production/client/context/writeContext.tsx
- ๋ชจ๋ฌ ๊ด๋ จ ๋ก์ง : ์ํ์ ํด๋น ์ํ๋ฅผ ์์ ํ๋ ํจ์๊ฐ ๋๋์ด์๋ ๋ชจ๋ฌ ๊ด๋ จ ๋ก์ง์ Context, Reducer๊ธฐ๋ฐ์ผ๋ก ์์ โ https://github.com/BY-juun/Blog/blob/production/client/context/headerContext.tsx
v3.6 On Demand Revalidation์ ์ด์ฉํด ISR๊ฐ์
- On Demand Revalidation์ ์ํ NextJS ์๋ฒ ๋ด๋ถ API ๊ตฌ์ฑ
v3.5 OAuth
- Github OAuth ๋์
- KaKao OAuth ๋์
- OAuth ๋์ ์ ๋ฐ๋ฅธ ์๋ฒ์ ํด๋ผ์ด์ธํธ ๋ก์ง ๋ณ๊ฒฝ
- OAuth ๋์ ์ ๋ฐ๋ฅธ ์ฌ์ฉ์ ํ ์ด๋ธ ๋ณ๊ฒฝ
v3.4 Infinite Scroll ์ ์ฉ
- ๋ฉ์ธํ์ด์ง, ์นดํ ๊ณ ๋ฆฌ ํ์ด์ง InfiniteScroll์ ์ฉ
- ์ด์ ํ์ด์ง ์คํฌ๋กค ์์น ์ ์ฅ์ ์ํด sessionStorageํ์ฉ
- React Query์์ ์ ๊ณตํ๋ useInfiniteQueryํ์ฉ
v3.3 ์ด๋ฏธ์ง ์ต์ ํ
- Intersection Observer๋ฅผ ํ์ฉํ ์ด๋ฏธ์ง Lazy Loading ์ ์ฉ
- png => webp ์ ์ฉ (picture, source ํ๊ทธ ํ์ฉ)
- alias path ์ ์ฉ
v3.2_sub ํ ์คํธ ์ฝ๋ ์ ์ฉ
MSW
(Mocking Service Worker)๋ฅผ ์ด์ฉํด, ์๋ฒ์ ํต์ ํ๋ API ๋ชจํน- ํด๋ผ์ด์ธํธ ๋ชจ๋ ์ปดํฌ๋ํธ์ ํ
์คํธ ์ฝ๋ ์์ฑ ๋ฐ ์ ์ฉ (
rendering test,
user interaction test
) - ์๋ฒ์ ํต์ ํ๋ ๋ชจ๋ API์ ํ ์คํธ ์ฝ๋ ์์ฑ ๋ฐ ์ ์ฉ
- pages ํด๋์ ํ ์คํธ ํ์ผ์ ๋ง๋ค ๊ฒฝ์ฐ, NextJS์์ ๋น๋๊ณผ์ ์์ ์ด๋ฅผ ํ ์คํธ๋ผ๊ณ ์ธ์ํ์ง ๋ชปํจ -> ํ์ด์ง ๊ด๋ จ ํ ์คํธ๋ util ํด๋์ ๋ฐ๋ก ๋นผ๋์
v3.2 Server Migration to Typescript
- ์ต์คํ๋ ์ค ์๋ฒ ํ์ ์คํฌ๋ฆฝํธ๋ก ๋ง์ด๊ทธ๋ ์ด์ ์์ ์งํ
- ๊ฐ ๋ชจ๋ ํ์ ์ถ๊ฐ
- ์์ค์ฝ๋์ ํ์ดํ์ ์ถ๊ฐํ๊ณ , ํ์ ์คํฌ๋ฆฝํธ ์ค์ ์ถ๊ฐ
- EC2์์ ์ธ์คํด์ค ์ ํ์ผ๋ก t2 Micro๋ฅผ ์ฌ์ฉ์ค์ธ๋ฐ, ํด๋น ์ธ์คํด์ค์๋ ๋น๋๊ฐ ๋๋ฌด ์ค๋๊ฑธ๋ฆฌ๊ณ , ๋๋ฆฌ๊ฒ ์งํ๋๋ค.
- ํ์ฌ๋, ์๋ฒ์ ์ฝ๋ ์์ด ๊ทธ๋ ๊ฒ ํฌ์ง ์๊ธฐ ๋๋ฌธ์, ๋ก์ปฌ์์ ๋น๋ ํ ์๊ฒฉ์ ์ฅ์(๊นํ)์ ์ฌ๋ฆฐ ํ, EC2์์๋ ๋น๋ํ์ผ๊น์ง pull ๋ฐ์ ํ pm2๋ฅผ ์ด์ฉํด์ ์คํํ๋ค.
v3.1 ์๋ฒ ๊ตฌ์กฐ ๊ฐ์
- ๋ผ์ฐํฐ์์ ๋ชจ๋ ๊ธฐ๋ฅ์ ์ฒ๋ฆฌํ๋ ์๋ฒ ๊ตฌ์กฐ๋ฅผ Router, Controller, Service ์์ ๋๋์ด ์ฒ๋ฆฌํ๋๋ก ๊ตฌ์กฐ ๊ฐ์
- API๋ฅผ ์ํ ์ฝ๋๋ค์ src ํด๋๋ก ์ด๋
- ์ฌ์ฉํ์ง ์๋ passport strategy ์ญ์
v3.2์์ ๋ณ๊ฒฝ ํ ๋ด์ฉ
- ์๋ฒ ์ฝ๋ ํ์ ์คํฌ๋ฆฝํธ ์ ์ฉ
- passport ๊ธฐ๋ฐ ๋ก๊ทธ์ธ์ jwt ๋๋ session ๊ธฐ๋ฐ ๋ก๊ทธ์ธ์ผ๋ก ๋ณ๊ฒฝ
- sequelize๋ฅผ ์ด์ฉํ ๋๋น ์ ๊ทผ์ query ํน์ typeORM์ ์ด์ฉํ๋๋ก ๋ณ๊ฒฝ