Transparent White Star

πŸ‘©πŸ»‍πŸ’» ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄/Next.js

πŸšͺ λ“€μ–΄κ°€λ©°Next.jsμ—μ„œλŠ” μ„œλ²„μ‚¬μ΄λ“œ λ Œλ”λ§(SSR)을 톡해 μ‚¬μš©μžκ°€ νŽ˜μ΄μ§€μ— μ ‘κ·Όν•˜κΈ° 전에 μ„œλ²„μ—μ„œ 데이터λ₯Ό 미리 가져와 νŽ˜μ΄μ§€λ₯Ό λ Œλ”λ§ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이 κ³Όμ •μ—λŠ” 두 가지 μ€‘μš”ν•œ μš”μ†Œκ°€ μž‘λ™ν•©λ‹ˆλ‹€API ν•Έλ“€λŸ¬ (@api/article.ts)νŽ˜μ΄μ§€ μ»΄ν¬λ„ŒνŠΈ (@pages/community/index.tsx)이 두 μš”μ†Œκ°€ μ–΄λ–»κ²Œ μƒν˜Έμž‘μš©ν•˜μ—¬ 동적 μ½˜ν…μΈ λ₯Ό 효율적으둜 μ œκ³΅ν•˜λŠ”μ§€ μ‚΄νŽ΄λ³΄μž ⭐️1. @api/article.tsμ—­ν• : API ν•Έλ“€λŸ¬κΈ°λŠ₯: ν΄λΌμ΄μ–ΈνŠΈμ˜ GET, POST, DELETE μš”μ²­μ„ μ²˜λ¦¬ν•˜κ³ , μ™ΈλΆ€ APIλ‚˜ λ°μ΄ν„°λ² μ΄μŠ€μ™€ μƒν˜Έμž‘μš©ν•˜μ—¬ ν•„μš”ν•œ 데이터λ₯Ό κ°€μ Έμ˜€κ±°λ‚˜ μˆ˜μ •ν•©λ‹ˆλ‹€.μ΄λŠ” λ°±μ—”λ“œμ—μ„œ 데이터 처리λ₯Ό λ‹΄λ‹Ήν•©λ‹ˆλ‹€.μ˜ˆμ‹œ: getArticles() ν•¨μˆ˜λŠ” κ²Œμ‹œκΈ€ λͺ©λ‘μ„ 가져와 JSON ν˜•..
CSRκ³Ό SSR 비ꡐ 및 CSR의 단점 보완 λ°©λ²•μš°μ„  SPA와 MPA에 λŒ€ν•΄μ„œ μ•Œμ•„λ³΄μž1. SPA와 MPA의 κΈ°λ³Έ κ°œλ…1️⃣ SPA (Single Page Application)ν•˜λ‚˜μ˜ νŽ˜μ΄μ§€λ‘œ κ΅¬μ„±λœ μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜μž…λ‹ˆλ‹€. νŽ˜μ΄μ§€ μ „ν™˜ μ‹œ 화면이 κΉœλΉ‘μ΄μ§€ μ•Šκ³ , μƒˆλ‘œμš΄ νŽ˜μ΄μ§€λ₯Ό μš”μ²­ν•  λ•Œ μ„œλ²„λ‘œλΆ€ν„° ν•„μš”ν•œ λ°μ΄ν„°λ§Œ 전달받아 λ Œλ”λ§ν•©λ‹ˆλ‹€.즉, CSR(Client-Side Rendering) 방식을 μ‚¬μš©ν•©λ‹ˆλ‹€.2️⃣ MPA (Multi Page Application)전톡적인 μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λ°©μ‹μž…λ‹ˆλ‹€. νŽ˜μ΄μ§€ μ „ν™˜ μ‹œλ§ˆλ‹€ μ„œλ²„μ—μ„œ μƒˆλ‘œμš΄ HTML을 받아와 전체 νŽ˜μ΄μ§€λ₯Ό μƒˆλ‘œ λ Œλ”λ§ν•©λ‹ˆλ‹€. μ΄λ•Œ νŽ˜μ΄μ§€κ°€ 깜빑일 수 있으며, SSR(Server-Side Rendering) 방식을 μ‚¬μš©ν•©λ‹ˆλ‹€.2. CSR(Clie..
public 폴더정적 파일: public ν΄λ”λŠ” 정적 파일(이미지, 폰트, μ•„μ΄μ½˜ λ“±)을 μ €μž₯ν•˜λŠ” κ³³μž…λ‹ˆλ‹€. 이 폴더에 μžˆλŠ” νŒŒμΌμ€ / 경둜둜 μ ‘κ·Όν•  수 μžˆμŠ΅λ‹ˆλ‹€.μš©λ„: 정적 νŒŒμΌμ„ μ €μž₯ν•˜λŠ” ν΄λ”λ‘œ, μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ λ¦¬μ†ŒμŠ€λ₯Ό κ΄€λ¦¬ν•©λ‹ˆλ‹€.μ˜ˆμ‹œ: public/images/logo.png νŒŒμΌμ€ /images/logo.png둜 μ ‘κ·Όν•  수 μžˆμŠ΅λ‹ˆλ‹€._app.js νŒŒμΌμ»€μŠ€ν…€ App μ»΄ν¬λ„ŒνŠΈ: _app.js νŒŒμΌμ€ Next.js μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ 전체 λ ˆμ΄μ•„μ›ƒκ³Ό μƒνƒœ 관리λ₯Ό μœ„ν•œ μ§„μž…μ μž…λ‹ˆλ‹€. λͺ¨λ“  νŽ˜μ΄μ§€μ—μ„œ κ³΅ν†΅μœΌλ‘œ μ‚¬μš©ν•  μ»΄ν¬λ„ŒνŠΈλ₯Ό μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.μš©λ„: 각 νŽ˜μ΄μ§€μ—μ„œ κ³΅ν†΅μ μœΌλ‘œ μ μš©ν•  섀정을 μ •μ˜ν•©λ‹ˆλ‹€.μƒνƒœ 관리: μ „μ—­ μŠ€νƒ€μΌμ΄λ‚˜ λ ˆμ΄μ•„μ›ƒ, μ»¨ν…μŠ€νŠΈ 제곡 등을 μ„€μ •ν•  수 μžˆμ–΄, νŽ˜μ΄μ§€ μ „ν™˜ μ‹œ μΌκ΄€λœ UIλ₯Ό..
yyezzzy
'πŸ‘©πŸ»‍πŸ’» ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄/Next.js' μΉ΄ν…Œκ³ λ¦¬μ˜ κΈ€ λͺ©λ‘