- Next.js 15v μ±λΌμ°ν°λ‘ ꡬνλ¬μ΅λλ€
- ssr,isrλ‘ νμ΄μ§λ¨μ μΊμ±(vercel data cacheμ ν¨κ»)μ μνν΄ μ΅μ νν©λλ€
- νμ¬ λ¨κ³μμλ λͺ¨λ°μΌ μ°μ μΌλ‘ ꡬνλμμΌλ©° νμ΄λΈλ¦¬λ μΉ μ±μΌλ‘ ꡬνλμμ΅λλ€
- Vercelμμ λ°°ν¬λ©λλ€
- μνκ΄λ¦¬λ context API, Zustandλ‘ κ΄λ¦¬λ©λλ€
npm install
npm run dev
- λͺ¨λνλ μ»΄ν¬λνΈ: κ° μ»΄ν¬λνΈλ λ 립μ μΌλ‘ μ€κ³λλ©°, λλ©μΈμ μμ‘΄μ μ΄μ§ μκ³ μ¬μ¬μ©νλλ‘ κ΅¬νν©λλ€.
components/
βββbookDetail/
β βββ BookDetail.tsx
β βββ BookTitleSection.tsx
β βββ BookDetailSection.tsx
β βββ BookImageSection.tsx
βββcommons/
β βββ CommonLable.tsx
β βββ CommonInputField.tsx
- μμ1) bookDetailμ book/[isbn] κ³Ό birth-day/[isbn]μμ 곡ν΅μΌλ‘ μ¬μ©λ©λλ€
- μμ2) commonsμ λͺ¨λ μμμμ μ¬μ©ν μ μλ κ²½μ°μ μμΉν©λλ€
app/
βββ publisher/
β βββ page.tsx
β βββ PublisherPageDataProvider.tsx
- μμ) publisherμ μμ‘΄μ μΈ μ μμνλ₯Ό κ΄λ¦¬νλ PublisherPageDataProviderλ publisher λΌμ°ν° λ΄λΆμ μ μν©λλ€
context/
βββ PopupStore.ts
- μμ) μ¬λ¬ λλ©μΈμ΄λ μ»΄ν¬λνΈ κ°μ 곡μ λλ μ μ μν κ΄λ¦¬λ₯Ό μν΄ μ¬μ©λ©λλ€(νΉν ν€λUI, λͺ¨λ¬UIκ°μ 곡μ©UI μ μ΄)
- μΊ‘μν: λλ©μΈμ μμ‘΄μ μΈ μνλ Context APIλ₯Ό μ¬μ©ν΄ 격리νλ©°, κ³΅μ© μνλ Zustandλ₯Ό νμ©νμ¬ μ μμ μΌλ‘ κ΄λ¦¬ν©λλ€.
- μ¬μ¬μ©μ±: μ»΄ν¬λνΈλ λͺ¨λνλ λ°©μμΌλ‘ μμ±λμ΄ μ΅λν λ€μν λλ©μΈμμ μ¬μ¬μ©ν μ μλλ‘ μ€κ³λ©λλ€.
- νμ₯μ±: μλ‘μ΄ κΈ°λ₯μ΄λ λλ©μΈμ΄ μΆκ°λ λ κΈ°μ‘΄ ꡬ쑰λ₯Ό λ³κ²½νμ§ μκ³ λ 립μ μΌλ‘ μμ ν μ μμ΅λλ€.
