๐ŸŽ [Vue TodoList] 2. ์ปดํฌ๋„ŒํŠธ ์ƒ์„ฑํ•˜๊ณ  ๋“ฑ๋กํ•˜๊ธฐ

sujinยท2021๋…„ 12์›” 28์ผ
0

Projects

๋ชฉ๋ก ๋ณด๊ธฐ
2/4
post-thumbnail

1. ์ปดํฌ๋„ŒํŠธ ์ƒ์„ฑ

  • ํ”„๋กœ์ ํŠธ ํด๋”์— src ๋ฐ‘์— components ํด๋”๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๊ทธ ์•„๋ž˜์— TodoHeader.vue TodoInput.vue TodoList.vue TodoFooter.vue๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

  • ์ปดํฌ๋„ŒํŠธ ๊ฐ™์€ ๊ฒฝ์šฐ ๊ด€๋ก€์ƒ src/components ํด๋”์—์„œ ๊ด€๋ฆฌ๋ฅผ ํ•œ๋‹ค. (ํด๋” ๊ด€๋ฆฌ, ์ถ”ํ›„ ์žฌํ™œ์šฉ ์ ‘๊ทผ์— ์šฉ์ด)

  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ทœ๋ชจ๊ฐ€ ์ปค์งˆ ๊ฒฝ์šฐ components/๊ธฐ๋Šฅ/์ปดํฌ๋„ŒํŠธ.vue ์™€ ๊ฐ™์€ ํ˜•์‹ฑ์œผ๋กœ ๊ด€๋ฆฌ (๊ธฐ๋Šฅ๋ณ„๋กœ ํด๋” ๋‚˜๋ˆ„๊ธฐ)

์ปดํฌ๋„ŒํŠธ ์ฝ”๋“œ ๊ตฌ์กฐ


<template>
    <!-- html ์ž…๋ ฅ -->
</template>

<script>
export default{
  
}
</script>

<style>
  /* css ์ž…๋ ฅ */
</style>

2. ์ปดํฌ๋„ŒํŠธ ๋“ฑ๋ก

  • ์•ž์—์„œ ์ƒ์„ฑํ•œ 4๊ฐœ์˜ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋“ฑ๋กํ•˜์—ฌ ํ™”๋ฉด์— ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋„๋ก ๋“ฑ๋กํ•œ๋‹ค.

์ง€์—ญ ์ปดํฌ๋„ŒํŠธ ๋“ฑ๋ก ๋ฐฉ๋ฒ•

component: {
  '์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„' : ์ปดํฌ๋„ŒํŠธ ๋‚ด์šฉ
}

ํŠน์ • ์ปดํฌ๋„ŒํŠธ์—์„œ ๋‹ค๋ฅธ ์œ„์น˜์— ์žˆ๋Š” ์ปดํฌ๋„ŒํŠธ์˜ ๋‚ด์šฉ์„ ๋ถˆ๋Ÿฌ ์˜ค๋Š” ๋ฐฉ๋ฒ•

import ๋ถˆ๋Ÿฌ์˜จ ํŒŒ์ผ์˜ ๋‚ด์šฉ์ด ๋‹ด๊ธธ ๊ฐ์ฒด from `๋ถˆ๋Ÿฌ์˜ฌ ํŒŒ์ผ ์œ„์น˜`;
  • App.vue
<template>
  <div id="app">
     <!-- ๋“ฑ๋กํ•œ ์ปดํฌ๋„ŒํŠธ 4๊ฐœ๋ฅผ HTML์— ํ‘œ์‹œ -->
    <TodoHeader></TodoHeader>
    <TodoInput></TodoInput>
    <TodoList></TodoList>
    <TodoFooter></TodoFooter>
  </div>
</template>

<script>
  // ์ปดํฌ๋„ŒํŠธ ๋‚ด์šฉ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ;
  // import ๋ถˆ๋Ÿฌ์˜ฌ ํŒŒ์ผ์˜ ๋‚ด์šฉ์ด ๋‹ด๊ธธ ๊ฐ์ฒด from '๋ถˆ๋Ÿฌ์˜ฌ ํŒŒ์ผ ์œ„์น˜'
  import TodoHeader from './components/TodoHeader.vue'
  import TodoInput from './components/TodoInput.vue'
  import TodoList from './components/TodoList.vue'
  import TodoFooter from './components/TodoFooter.vue'

  export default{
    components: {
      // ์ง€์—ญ ์ปดํฌ๋„ŒํŠธ ๋“ฑ๋ก
      // '์ปดํฌ๋„ŒํŠธ ํƒœ๊ทธ ์ด๋ฆ„' : ์ปดํฌ๋„ŒํŠธ ๋‚ด์šฉ(๋ถˆ๋Ÿฌ์˜ฌ ํŒŒ์ผ์˜ ๋‚ด์šฉ์ด ๋‹ด๊ธธ ๊ฐ์ฒด)
      'TodoHeader' : TodoHeader,
      'TodoInput' : TodoInput,
      'TodoList' : TodoList,
      'TodoFooter' : TodoFooter
    }
  }
</script>
....

profile
๊ฐœ๋ฐœ๋Œ•๋ฐœ

0๊ฐœ์˜ ๋Œ“๊ธ€