Home NextJS13
Post
Cancel

NextJS13

๐Ÿ“Œ NEXT JS 13 ๋ณ€๊ฒฝ์ 

/pages ํด๋”

๋ณ€๊ฒฝ์ „

/pages

ใ„ด test/

ใ„ด index.tsx <- /test

ใ„ด page.tsx <- /text/page

ใ„ด some.tsx <- /test/some

๋ณ€๊ฒฝํ›„

/app

ใ„ด test/

ใ„ด index.tsx <- ์ ‘๊ทผ๋ถˆ๊ฐ€

ใ„ด page.tsx <- /text

ใ„ด some.tsx <- ์ ‘๊ทผ๋ถˆ๊ฐ€

app ๋””๋ ‰ํ† ๋ฆฌ ๋‚ด์— ๋‹ค์–‘ํ•œ ํŒŒ์ผ ์ถ”๊ฐ€

  • page.tsx : ๊ฒฝ๋กœ์˜ ๊ณ ์œ ํ•œ UI๋ฅผ ์ •์˜ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. ํŽ˜์ด์ง€๋Š” ๊ฒฝ๋กœ์˜ ๋ฆฌํ”„๋ฅผ ๋‚˜ํƒ€๋‚ด๋ฉฐ ๊ฒฝ๋กœ์— ์•ก์„ธ์Šคํ•˜๋ ค๋ฉด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

  • layout.tsx : ์—ฌ๋Ÿฌ ํŽ˜์ด์ง€์—์„œ ๊ณต์œ ๋˜๋Š” UI๋ฅผ ์ •์˜ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. ๋ ˆ์ด์•„์›ƒ์€ ๋‹ค๋ฅธ ๋ ˆ์ด์•„์›ƒ์ด๋‚˜ ํŽ˜์ด์ง€๋ฅผ ์ž์‹์œผ๋กœ ๋ฐ›์•„๋“ค์ž…๋‹ˆ๋‹ค. ๋ ˆ์ด์•„์›ƒ์„ ์ค‘์ฒฉํ•˜์—ฌ ์ค‘์ฒฉ ๊ฒฝ๋กœ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • loading.tsx : ์•ฑ์˜ ํŠน์ • ๋ถ€๋ถ„์— ๋Œ€ํ•œ ๋กœ๋”ฉ UI๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์„ ํƒ์  ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. React Suspense Boundary์—์„œ ํŽ˜์ด์ง€ ๋˜๋Š” ํ•˜์œ„ ๋ ˆ์ด์•„์›ƒ์„ ์ž๋™์œผ๋กœ ๋ž˜ํ•‘ํ•˜์—ฌ ์ฒซ ๋ฒˆ์งธ ๋กœ๋“œ ์‹œ ๋ฐ ํ˜•์ œ ๊ฒฝ๋กœ ์‚ฌ์ด๋ฅผ ํƒ์ƒ‰ํ•  ๋•Œ ๋กœ๋“œ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์ฆ‰์‹œ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

  • error.tsx : ์˜ค๋ฅ˜๋ฅผ ์•ฑ์˜ ํŠน์ • ๋ถ€๋ถ„์œผ๋กœ ๊ฒฉ๋ฆฌํ•˜๊ณ  ํŠน์ • ์˜ค๋ฅ˜ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•˜๊ณ  ์˜ค๋ฅ˜ ๋ณต๊ตฌ๋ฅผ ์‹œ๋„ํ•˜๋Š” ๊ธฐ๋Šฅ์— ์‚ฌ์šฉ๋˜๋Š” ์„ ํƒ์  ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. React Error Boundary์—์„œ ํŽ˜์ด์ง€ ๋˜๋Š” ํ•˜์œ„ ๋ ˆ์ด์•„์›ƒ์„ ์ž๋™์œผ๋กœ ๋ž˜ํ•‘ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์œ„ ํŠธ๋ฆฌ์—์„œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ๊ฒฌ๋  ๋•Œ๋งˆ๋‹ค ์˜ค๋ฅ˜ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

  • template.tsx : ๋ ˆ์ด์•„์›ƒ๊ณผ ์œ ์‚ฌํ•˜์ง€๋งŒ ํƒ์ƒ‰ ์‹œ ๊ตฌ์„ฑ ์š”์†Œ์˜ ์ƒˆ ์ธ์Šคํ„ด์Šค๊ฐ€ ๋งˆ์šดํŠธ๋˜๊ณ  ์ƒํƒœ๊ฐ€ ๊ณต์œ ๋˜์ง€ ์•Š๋Š” ์„ ํƒ์  ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. ๋“ค์–ด๊ฐ€๊ธฐ/๋‚˜๊ฐ€๊ธฐ ์• ๋‹ˆ๋ฉ”์ด์…˜๊ณผ ๊ฐ™์€ ๋™์ž‘์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ํ…œํ”Œ๋ฆฟ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • head.tsx : ์ฃผ์–ด์ง„ ๊ฒฝ๋กœ์— ๋Œ€ํ•œ <head> ํƒœ๊ทธ์˜ ๋‚ด์šฉ์„ ์ •์˜ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์„ ํƒ์  ํŒŒ์ผ์ž…๋‹ˆ๋‹ค.

์ด์ „ ๋ฒ„์ „๋“ค๊ณผ ๋‹ค๋ฅด๊ฒŒ page๊ฐ€ ์‚ฌ์šฉ๋˜์–ด ๊ฐ„๋‹จํ•˜๊ฒŒ ๋ฒ„์ „ up์„ ํ•  ์ˆ˜๋„ ์—†๊ณ  ์ด์ „ ๋ฒ„์ „๋“ค์ด ๋ ˆ๊ฑฐ์‹œ ์‹œ์Šคํ…œ์ด ๋ ๊ฒƒ๊ฐ™์Œ

server component

app ํด๋” ์•ˆ์˜ component๋“ค์ด ๊ธฐ๋ณธ์ ์œผ๋กœ react server component๊ฐ€ ๋œ๋‹ค

server component๋Š” server์—์„œ ๋ Œ๋”๋ง๋˜๋Š” component์ด๊ณ 

client component๋Š” client์—์„œ ๋ฐ›์•„์„œ ๋ Œ๋”๋ง๋˜๋Š” component์ž„

๋ฒˆ๋“ค๋ง ํˆด Turbo pack

Next 13 ๋ถ€ํ„ฐ๋Š” ๋ฒˆํ‹€๋ง ํˆด๋กœ turbo pack์ด ์‚ฌ์šฉ๋œ๋‹ค. webpack๋ณด๋‹ค 700๋ฐฐ ๋น ๋ฅด๋‹ค๊ณ ํ•จ(Vercel์—์„œ)

This post is licensed under CC BY 4.0 by the author.