# Nuxt์˜ ํŽ˜์ด์ง€ ๋ผ์šฐํŒ…

๋ทฐ ์‹ฑ๊ธ€ ํŽ˜์ด์ง€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ๋Š” ๋ผ์šฐํ„ฐ ์„ค์ •์„ ์•„๋ž˜์™€ ๊ฐ™์ด ์ผ์ผ์ด ํ•ด์ค˜์•ผ ํ•˜๋Š”๋ฐ ๋ฐ˜ํ•ด ๋„‰์ŠคํŠธ์—์„œ๋Š” ํด๋”์™€ ํŒŒ์ผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ผ์šฐํ„ฐ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•ด ์ค๋‹ˆ๋‹ค.

// ๋ทฐ ์‹ฑ๊ธ€ ํŽ˜์ด์ง€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ผ์šฐํ„ฐ ์„ค์ • ํŒŒ์ผ
new VueRouter({
  routes: [
    {
      path: 'URL ์ฃผ์†Œ',
      component: URL ์ฃผ์†Œ์— ์ ‘๊ทผํ–ˆ์„ ๋•Œ ํ‘œ์‹œํ•  ํŽ˜์ด์ง€ ์ปดํฌ๋„ŒํŠธ
    }
  ],
});

# ํŽ˜์ด์ง€ ๊ธฐ๋ฐ˜ ๋ผ์šฐํ„ฐ ์ž๋™ ์ƒ์„ฑ

๋„‰์ŠคํŠธ์—์„œ ์–ด๋–ป๊ฒŒ ํŒŒ์ผ๊ณผ ํด๋” ๊ธฐ๋ฐ˜์œผ๋กœ ๋ผ์šฐํŒ… ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋„‰์ŠคํŠธ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋ฉด pages ํด๋”๊ฐ€ ์กด์žฌํ•˜๋Š”๋ฐ ๊ทธ ์•„๋ž˜์— ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํŒŒ์ผ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

page-folder

์œ„์™€ ๊ฐ™์ด ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๋ฉด URL์„ ๊ฐ๊ฐ /, /login, /main์œผ๋กœ ์ ‘๊ทผํ–ˆ์„ ๋•Œ index.vue, login.vue, main.vue ์ปดํฌ๋„ŒํŠธ๊ฐ€ ํ™”๋ฉด์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์ด๋•Œ ๋ ˆ์ด์•„์›ƒ ์ปดํฌ๋„ŒํŠธ์— <Nuxt/>๋ผ๋Š” ํƒœ๊ทธ๊ฐ€ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.




ย 



<!-- layouts/default.vue -->
<template>
  <div>
    <Nuxt />
  </div>
</template>

์—ฌ๊ธฐ์„œ ์ผ์ผ์ด URL์„ ์ž…๋ ฅํ•˜์—ฌ ๋“ค์–ด๊ฐ€๊ธฐ์—” ๋ฒˆ๊ฑฐ๋กœ์šฐ๋ฏ€๋กœ ์•„๋ž˜์™€ ๊ฐ™์ด ํŽ˜์ด์ง€ ์ด๋™ ๋งํฌ์ธ <NuxtLink to="/url์ฃผ์†Œ"> ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.





ย 
ย 
ย 





<!-- layouts/default.vue -->
<template>
  <div>
    <h1>
      <NuxtLink to="/">์‹œ์ž‘</NuxtLink>
      <NuxtLink to="/login">๋กœ๊ทธ์ธ</NuxtLink>
      <NuxtLink to="/main">๋ฉ”์ธ</NuxtLink>
    </h1>
    <Nuxt />
  </div>
</template>

์ด์ œ ๊ฐ ๋งํฌ๋ฅผ ํด๋ฆญํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.

nuxt-routing

# ๋ทฐ ๋ผ์šฐํ„ฐ์™€์˜ ๋น„๊ต

์œ„์—์„œ ์‚ดํŽด๋ณธ ๋„‰์ŠคํŠธ์˜ ๋ผ์šฐํŒ… ๋ฐฉ์‹์„ ๋ทฐ ๋ผ์šฐํ„ฐ ๋ฐฉ์‹๊ณผ ๋น„๊ตํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Nuxt.js VueRouter
<Nuxt> <router-view>
<NuxtLink to="/"> <router-link to="/">

์ด์ฒ˜๋Ÿผ ๋„‰์ŠคํŠธ๋Š” ๋ผ์šฐํ„ฐ ์„ค์ • ํŒŒ์ผ์„ ์ผ์ผ์ด ์ƒ์„ฑ ๋ฐ ์„ค์ •ํ•˜์ง€ ์•Š์•„๋„ ๋˜์–ด ํŽธ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

TIP

<router-view>, <Nuxt> ๋ชจ๋‘ ๋ทฐ ์ปดํฌ๋„ŒํŠธ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ <RouterView>์™€ <router-view>์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. <Nuxt>๋„ ๊ทธ๋Ÿผ ๋™์ผํ•œ ์ผ€๋ฐฅ ๋„ค์ด๋ฐ์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋ฉด <nuxt>๋กœ๋„ ์“ธ ์ˆ˜ ์žˆ๊ฒ ์ฃ ? ๐Ÿ˜ƒ