๐Ÿธminzzi
Minzzi์•ผ
๐Ÿธminzzi
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (131)
    • ์˜ค๋ฅ˜ํ•ด๊ฒฐ (14)
    • FE (36)
      • Next.js (17)
      • React (4)
      • React Native (0)
      • TypeScript (1)
      • JavaScript (14)
    • BE (0)
      • Nest.js (0)
    • ๋ฐ๋ธŒ์ฝ”์Šค (7)
    • ์›น ํ”„๋กœ์ ํŠธ (5)
    • CS (28)
      • Algorithm (5)
      • Python (4)
      • C++ (2)
      • Operating System (4)
      • Computer Networking (3)
      • Data Structure (1)
      • Machine Learning (3)
      • Tip (6)
    • Github (4)
    • Flutter (3)
      • ํ”„๋กœ์ ํŠธ (3)
    • Private (27)
      • ํšŒ๊ณ  (7)
      • ๋ฉด์ ‘ (17)
    • ๊ฐœ๋ฐœ๋„์„œ (6)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • layout shift
  • ์ด๋ฒคํŠธ๋ฃจํ”„
  • next.js
  • ๋ฉด์ ‘
  • SSR
  • ํž™์˜์—ญ
  • ๋ ‰์‹œ์ปฌ
  • ์˜ค๋ธ”์™„
  • ํ‹ฐ์Šคํ† ๋ฆฌ์ฑŒ๋ฆฐ์ง€
  • ์ฝœ์Šคํƒ
  • ์‹คํ–‰์ปจํ…์ŠคํŠธ
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ
  • ์ด๋ฏธ์ง€ ์ตœ์ ํ™”
  • ๋ชจ๋˜๋ฆฌ์•กํŠธ๋”ฅ๋‹ค์ด๋ธŒ
  • ํ˜ธ์ด์ŠคํŒ…
  • ์‹คํ–‰์ปจํƒ์ŠคํŠธ
  • reflow
  • ์›์‹œํƒ€์ž…
  • ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…
  • react

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
๐Ÿธminzzi

Minzzi์•ผ

[Next.js] ๋ฆฌ์•กํŠธ ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ
FE/Next.js

[Next.js] ๋ฆฌ์•กํŠธ ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ

2025. 5. 7. 20:41
ํ•œ ์ž… ํฌ๊ธฐ๋กœ ์ž˜๋ผ๋จน๋Š” Next.js ํ•™์Šต์ •๋ฆฌ์šฉ์ž…๋‹ˆ๋‹ค. 
3.4) ๋ฆฌ์•กํŠธ ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ ์ดํ•ดํ•˜๊ธฐ
3.5) ๋ฆฌ์•กํŠธ ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ ์ฃผ์˜์‚ฌํ•ญ

3.4 ๋ฆฌ์•กํŠธ ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ ์ดํ•ดํ•˜๊ธฐ

๋ฆฌ์•กํŠธ ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ๋ž€?

- ๋ฆฌ์•กํŠธ 18 ๋ฒ„์ „๋ถ€ํ„ฐ ์ƒˆ๋กญ๊ฒŒ ์ถ”๊ฐ€๋œ ์ƒˆ๋กœ์šด ์œ ํ˜•์˜ ๋ฆฌ์•กํŠธ ์ปดํฌ๋„ŒํŠธ

- ์„œ๋ฒ„ ์ธก์—์„œ๋งŒ ์‹คํ–‰๋˜๋Š” ์ปดํฌ๋„ŒํŠธ์ด๋‹ค.

 

๋ฆฌ์•กํŠธ ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋‚˜ํƒ€๋‚˜๊ฒŒ๋œ ๋ฐฐ๊ฒฝ

Page router์—์„œ์˜ ์‚ฌ์ „๋ Œ๋”๋ง์„ ๋‹ค์‹œ ๋– ์˜ฌ๋ ค๋ณด๋ฉด ํ•˜์ด๋“œ๋ ˆ์ด์…˜(ํ™”๋ฉด์— ์ƒํ˜ธ์ž‘์šฉ์„ ์ถ”๊ฐ€)์„ ์œ„ํ•ด ์„œ๋ฒ„๋Š” ๋ชจ๋“  JS ํŒŒ์ผ๋“ค์„ ๋ฌถ๋Š” ๋ฒˆ๋“ค๋ง์„ ์ง„ํ–‰ํ•˜๊ณ  ๋ธŒ๋ผ์šฐ์ €์—๊ฒŒ ๋ฒˆ๋“คํŒŒ์ผ์ด ์ „๋‹ฌํ•œ๋‹ค๊ณ  ํ–ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ƒํ˜ธ์ž‘์šฉ์ด ํ•„์š”ํ•˜์ง€ ์•Š์€ ๋ชจ๋“  ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ ๋˜ํ•œ ๋ฒˆ๋“ค์— ํฌํ•จ๋  ํ•„์š”๋Š” ์—†๋‹ค. ์™œ๋ƒํ•˜๋ฉด ํ›„์†์œผ๋กœ JS ๋ฒˆ๋“ค ๊ณผ์ •์„ ์ง„ํ–‰ํ•˜๊ธฐ ์ „์— ์„œ๋ฒ„๋Š” ์‚ฌ์ „ ๋ Œ๋”๋ง์„ ํ†ตํ•ด ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. 

 

JS ๋ฒˆ๋“ค์— ํฌํ•จ๋˜์–ด์•ผ ํ•  ์ปดํฌ๋„ŒํŠธ

- useState๋‚˜ useEffect ๋“ฑ์˜ ๋ฆฌ์•กํŠธ ํ›…์Šค๊ฐ€ ์žˆ๋Š” ์ปดํฌ๋„ŒํŠธ

- ์ด๋ฒคํŠธ ํ–‰๋“ค๋Ÿฌ๊ฐ€ ๋ถ™์–ด ์žˆ์–ด์„œ ๊ผญ ํ•˜์ด๋“œ๋ ˆ์ด์…˜์„ ์ง„ํ–‰ํ•ด์•ผ ํ•˜๋Š” ์ปดํฌ๋„ŒํŠธ

 

Page router์—์„œ๋Š” ์ด๋Ÿฌํ•œ ์ƒํ˜ธ์ž‘์šฉ์„ ํ•˜์ง€ ์•Š๋Š” ์ปดํฌ๋„ŒํŠธ๋“ค์„ ์‹ ๊ฒฝ์“ฐ์ง€ ์•Š๊ธฐ๋•Œ๋ฌธ์— ๋ชจ๋“  JS ํŒŒ์ผ๋“ค์„ ๋ฒˆ๋“ค๋งํ•˜์—ฌ ๋ฒˆ๋“ค์˜ ์šฉ๋Ÿ‰์ด ์“ธ๋ฐ์—†์ด ์ปค์ง€๊ฒŒ ๋˜๊ณ  ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋ถˆ๋Ÿฌ์˜ค๋Š” ์‹œ๊ฐ„๋„ ์˜ค๋ž˜๊ฑธ๋ฆฐ๋‹ค.

 

๋”ฐ๋ผ์„œ ์ด๋Ÿฌํ•œ ์ƒํ˜ธ์ž‘์šฉ์ด ํ•„์š”ํ•œ ์ปดํฌ๋„ŒํŠธ(ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ)๋“ค๋งŒ JS ๋ฒˆ๋“ค์— ํฌํ•จ์‹œํ‚จ๋‹ค๋ฉด ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋ฆฌ์•กํŠธ ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ์™€ ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ ์ƒ์„ฑ ์‹ค์Šต

์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ๋Š” ๋”ฐ๋กœ ๋งŒ๋“ค์–ด ์ค„ ํ•„์š”๊ฐ€ ์—†๋‹ค.

ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ๋Š” ์ปดํฌ๋„ŒํŠธ ์ƒ๋‹จ์— 'use client'; directive ์ง€์‹œ์ž๋ฅผ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค.

'use client';

 

 

์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ์—์„œ log๋ฅผ ์ฐ๋”๋ผ๋„ ๋ธŒ๋ผ์šฐ์ €์—์„œ log๊ฐ€ ์ถœ๋ ฅ๋˜์ง€ ์•Š๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. (๋Œ€์‹  ํ„ฐ๋ฏธ๋„ ์ฝ˜์†”์—๋Š” ์ถœ๋ ฅ๋œ๋‹ค.)

 

ํด๋ผ์ด์–ธํŠธ, ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ๋Š” ์–ด๋–ค ์ปดํฌ๋„ŒํŠธ๋“ค์ด ๋˜์–ด์•ผ ํ•˜๋‚˜?

์ƒํ˜ธ์ž‘์šฉ์ด ์žˆ๋‹ค -> ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ

์ƒํ˜ธ์ž‘์šฉ์ด ์—†๋‹ค -> ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ

 

co-location

page router์—์„œ๋Š” search.tsx ์ด๋Ÿฐ ํŒŒ์ผ ์—ญ์‹œ path๋กœ ์—ฌ๊ฒผ๋Š”๋ฐ,

app router์—์„œ๋Š” page.tsx, layout.tsx์„ ์ œ์™ธํ•œ ๋ชจ๋“  ํŒŒ์ผ์„ ์ผ๋ฐ˜์ ์ธ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋˜๋Š” ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ๋กœ ๊ฐ„์ฃผํ•˜๊ธฐ ๋•Œ๋ฌธ์— page.tsx์™€ ๋™์ผํ•œ ์œ„์น˜์— search.tsx์™€ ๊ฐ™์€ ํŒŒ์ผ์„ ์ƒ์„ฑํ•ด๋„ path๋กœ ์—ฌ๊ธฐ์ง€ ์•Š๋Š”๋‹ค.

 

์ด๋Ÿฌํ•œ ํŠน์ง•์„ co-location์ด๋ผ๊ณ  ํ•œ๋‹ค.


3.5 ๋ฆฌ์•กํŠธ ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ ์ฃผ์˜์‚ฌํ•ญ

1. ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ์—๋Š” ๋ธŒ๋ผ์šฐ์ €์—์„œ ์‹คํ–‰๋  ์ฝ”๋“œ๊ฐ€ ํฌํ•จ๋˜๋ฉด ์•ˆ๋œ๋‹ค.

- ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ๋Š” ๋ธŒ๋ผ์šฐ์ €์—์„œ ์•„์˜ˆ ์‹คํ–‰์กฐ์ฐจ ๋˜์ง€ ์•Š๋Š”๋‹ค.

- useState, useEffect ๋“ฑ์˜ ๋ฆฌ์•กํŠธ hooks๋‚˜ onClick, onChange ๋“ฑ์˜ ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ ์—ญ์‹œ ์‚ฌ์šฉ ๋ถˆ๊ฐ€๋Šฅ

- ๋ธŒ๋ผ์šฐ์ € ์ธก์—์„œ ์‹คํ–‰๋˜๋Š” ๊ธฐ๋Šฅ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋˜ํ•œ ์‚ฌ์šฉ ๋ถˆ๊ฐ€๋Šฅ

 

2. ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ๋Š” ํด๋ผ์ด์–ธํŠธ์—์„œ๋งŒ ์‹คํ–‰๋˜์ง€ ์•Š๋Š”๋‹ค.

์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ 

- ์„œ๋ฒ„์ธก์—์„œ๋งŒ ์‹คํ–‰๋˜๋Š” ์ปดํฌ๋„ŒํŠธ

 

ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ

- ์‚ฌ์ „ ๋ Œ๋”๋ง์„ ์œ„ํ•ด ์„œ๋ฒ„์—์„œ 1๋ฒˆ ์‹คํ–‰

- ํ•˜์ด๋“œ๋ ˆ์ด์…˜์„ ์œ„ํ•ด ๋ธŒ๋ผ์šฐ์ €์—์„œ 1๋ฒˆ ์‹คํ–‰

-> ์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ์—์„œ ๋ชจ๋‘ ์‹คํ–‰๋จ

 

3. ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ์—์„œ ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ๋ฅผ import ํ•  ์ˆ˜ ์—†๋‹ค.

"use client";

import ServerComponent from "./server-component.tsx"; // ๋ถˆ๊ฐ€๋Šฅ

export default function ClientComponent() {
	return <ServerComponent />
}

์˜ค๋ฅ˜ ๋ฐœ์ƒํ•˜๋ฉฐ, ์˜๋„์น˜ ์•Š์€ ๋™์ž‘์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.

 

ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ๋Š” ์„œ๋ฒ„ & ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋ชจ๋‘ ์‹คํ–‰๋œ๋‹ค.

์„œ๋ฒ„ ์ธก์—์„œ ์‹คํ–‰ํ•  ๋•Œ๋Š” ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ๋ฅผ import ํ•ด์˜ฌ ์ˆ˜ ์žˆ๊ฒ ์ง€๋งŒ,

๋ธŒ๋ผ์šฐ์ € ์ธก์—์„œ ์‹คํ–‰ํ•  ๋•Œ๋Š” ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์˜ค๋ฅ˜๊ฐ€ ๋‚  ์ˆ˜ ์žˆ๋‹ค.

 

ํ•˜์ง€๋งŒ Next.js๋Š” ์ €๋Ÿฌํ•œ ์‹ค์ˆ˜๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฒฝ์šฐ, ์ € ServerComponent๋ฅผ Client Component๋กœ ๋ฐ”๊ฟ”์ฃผ๊ฒŒ ๋œ๋‹ค.

 

๊ทธ๋Ÿผ์—๋„ ServerComponent๋ฅผ Client Component์— ํฌํ•จ์‹œ์ผœ์•ผ ํ•˜๋Š” ์ƒํ™ฉ์ด๋ผ๋ฉด?

์œ„ ์ฝ”๋“œ์ฒ˜๋Ÿผ import ํ•˜์ง€๋ง๊ณ  props๋กœ ํ™œ์šฉํ•ด๋ผ

"use client";

export default function ClientComponent({children}: {children: ReactNode;}) {
	return <div>{children}</div>;
}

 

4. ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ์—์„œ ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ์—๊ฒŒ ์ง๋ ฌํ™” ๋˜์ง€ ์•Š๋Š” Props๋Š” ์ „๋‹ฌ ๋ถˆ๊ฐ€ํ•˜๋‹ค.

์ง๋ ฌํ™”๋ž€?

๊ฐ์ฒด, ๋ฐฐ์—ด, ํด๋ž˜์Šค ๋“ฑ์˜ ๋ณต์žกํ•œ ๊ตฌ์กฐ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋„คํŠธ์›Œํฌ ์ƒ์œผ๋กœ ์ „์†กํ•˜๊ธฐ ์œ„ํ•ด ์•„์ฃผ ๋‹จ์ˆœํ•œ ํ˜•ํƒœ(๋ฌธ์ž์—ด, Byte)๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ฒƒ

// Before
const person = {
	name: "์ด์ •ํ™˜",
    age: 27,
};
// After
{"name":"์ด์ •ํ™˜","age":27}

 

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ•จ์ˆ˜๋Š” ์ง๋ ฌํ™”๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

- ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ•จ์ˆ˜๋Š” ์–ด๋– ํ•œ ๊ฐ’์ด ์•„๋‹Œ ์ฝ”๋“œ๋ธ”๋Ÿญ์„ ํฌํ•จํ•˜๊ณ  ์žˆ๋Š” ํŠน์ˆ˜ํ•œ ํ˜•ํƒœ์ด๊ธฐ ๋•Œ๋ฌธ์—

- ํด๋กœ์ €๋‚˜ ๋ ‰์‹œ์ปฌ ์Šค์ฝ”ํ”„ ๋“ฑ์˜ ๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ์— ์˜์กดํ•ด ์žˆ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์•„ ๋ชจ๋“  ์ •๋ณด๋“ค์„ ๋‹จ์ˆœํ•œ ๋ฌธ์ž์—ด์ด๋‚˜ ๋ฐ”์ดํŠธ์˜ ํ˜•ํƒœ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ

 

์‚ฌ์ „ ๋ Œ๋”๋ง ๊ณผ์ •

- ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ๋“ค์ด ๋จผ์ € ์‹คํ–‰์ด ๋˜๊ณ  ๋‚˜์ค‘์— ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ๋“ค์ด ๋’ค์ด์–ด ์‹คํ–‰๋œ๋‹ค.

- ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ๋“ค๋งŒ ๋”ฐ๋กœ ํ•œ ๋ฒˆ ์‹คํ–‰์‹œ์ผœ์ฃผ๋ฉด ๊ทธ ๊ฒฐ๊ณผ๋กœ HTML ํƒœ๊ทธ๊ฐ€ ๋ฐ”๋กœ ์‹คํ–‰์ด ๋˜๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ RSC ํŽ˜์ด๋กœ๋“œ(React Server Component Payload : RSC ๊ฒฐ๊ณผ๋ฌผ)๋ผ๋Š” JSON ๋น„์Šทํ•œ ํ˜•ํƒœ์˜ ๋ฌธ์ž์—ด์ด ์ƒ์„ฑ๋œ๋‹ค.

 

RSC payload : RSC๋ฅผ ์ง๋ ฌํ™”ํ•œ ๊ฒฐ๊ณผ๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.

 

RSC payload ์— ํฌํ•จ๋˜๋Š” ๊ฐ’

- ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ์˜ ๋ Œ๋”๋ง ๊ฒฐ๊ณผ

- ์—ฐ๊ฒฐ๋œ ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ์˜ ์œ„์น˜

- ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ์—๊ฒŒ ์ „๋‹ฌํ•˜๋Š” Props ๊ฐ’

 

ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ ์‹คํ–‰

์ดํ›„์— ์•„์ง ์‹คํ–‰ํ•˜์ง€ ๋ชปํ•œ ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ๋“ค๋„ ๋งˆ์ € ์‹คํ–‰๋˜์–ด RSC ํŽ˜์ด๋กœ๋“œ์™€ ํ•ฉ์ณ์ ธ HTML ํŽ˜์ด์ง€๊ฐ€ ์™„์„ฑ๋˜๊ฒŒ ๋œ๋‹ค.

์ง๋ ฌํ™”ํ•  ์ˆ˜ ์—†๋Š” JS ํ•จ์ˆ˜๋Š” ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ์—๊ฒŒ ์ „๋‹ฌํ•˜๋Š” Props๋กœ ์ „๋‹ฌ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋Ÿฐํƒ€์ž„์—๋Ÿฌ๊ฐ€ ๋‚œ๋‹ค.

 

๋”ฐ๋ผ์„œ ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ์—์„œ ํด๋ผ์ด์–ธํŠธ ์ปดํฌ๋„ŒํŠธ์—๊ฒŒ props๋กœ ํ•จ์ˆ˜์ฒ˜๋Ÿผ ์ง๋ ฌํ™”๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•œ ๊ฐ’์„ ๋ณด๋‚ด์ฃผ๊ฒŒ ๋˜๋ฉด ์•ˆ๋œ๋‹ค.

 

์ €์ž‘์žํ‘œ์‹œ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'FE > Next.js' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Next.js] app router - ๋ฐ์ดํ„ฐ ํŽ˜์นญ  (0) 2025.05.18
[Next.js] App Router - ๋„ค๋น„๊ฒŒ์ดํŒ…  (0) 2025.05.08
[Next.js] App Router - ๋ ˆ์ด์•„์›ƒ  (0) 2025.05.06
[Next.js] App Router - ํŽ˜์ด์ง€ ๋ผ์šฐํŒ…  (0) 2025.05.06
[Next.js] Page Router ์žฅ๋‹จ์   (0) 2025.05.06
    'FE/Next.js' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [Next.js] app router - ๋ฐ์ดํ„ฐ ํŽ˜์นญ
    • [Next.js] App Router - ๋„ค๋น„๊ฒŒ์ดํŒ…
    • [Next.js] App Router - ๋ ˆ์ด์•„์›ƒ
    • [Next.js] App Router - ํŽ˜์ด์ง€ ๋ผ์šฐํŒ…
    ๐Ÿธminzzi
    ๐Ÿธminzzi

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”