vue-practice

vue create vue-practice
โ†’ vue3 ๋ฒ„์ ผ ์‹คํ–‰, yarn
โ€œserveโ€ : ๊ฐœ๋ฐœํ• ๋–„ ํ•„์š”ํ•œ ๊ฐœ๋ฐœ ์„œ๋ฒ„ ์‹คํ–‰
โ€œbuildโ€ : ์ฝ”๋“œ๋ฅผ ์‹ค์ œ ํ”„๋กœ๋•ํŠธ ์ฝ”๋“œ๋กœ ๋ณ€ํ™˜ํ• ๋–„ ์‚ฌ์šฉ
โ€œlintโ€ : es lint ์ ์šฉํ• ๋•Œ,

vue-snippets

  • vueinit (template, script, style ํ•œ๊บผ๋ฒˆ์— ์–‘์‹ ์ถœ๋ ฅ)

๋ฌธ๋ฒ•

data()

  • html ํƒœ๊ทธ๋Š” <template></template> ํƒœ๊ทธ ์•ˆ์— ๋ชจ์•„ ์ž‘์„ฑํ•œ๋‹ค.
  • ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ ์‹œ, ๋™์ ์œผ๋กœ ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ๋ฅผ html ํƒœ๊ทธ์•ˆ์— ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ž‘์„ฑ ๋ฐฉ๋ฒ•์€ {{ data }} ์ด๋‹ค.
  • input ํƒœ๊ทธ์•ˆ์— ์–‘๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ์ž‘์„ฑ์„ ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, v-model ์ด๋ผ๋Š” ํ”„๋กœํผํ‹ฐ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  value๊ฐ’์€ โ€œdataโ€œ ์ด๋‹ค.
  • ๋™์  ๋ฐ์ดํ„ฐ๋ฅผ html ์†์„ฑ์— ๋ฐ”์ธ๋”ฉ ํ•  ๊ฒฝ์šฐ์—๋Š” ํ•ญ์ƒ v-bind: ํ˜น์€ :๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ๋ฐ”์ธ๋”ฉํ•œ๋‹ค.
    • <img v-bind:src=โ€imgSourceโ€>
    • <a :href=โ€naverUrlโ€>naver</a>
  • ํด๋ž˜์Šค๋ฅผ ๋™์ ์œผ๋กœ ์ž‘์„ฑ ํ•  ์ˆ˜ ์žˆ๋‹ค.
    • <h2 :class="{ red: food === 'apple', 'not-good': food === 'rice' }"> ์•ˆ๋…•ํ•˜์„ธ์š” {{ food }} ์ž…๋‹ˆ๋‹ค.</h2>
  • v-if์™€ v-show์˜ ์ฐจ์ด
    • if์˜ display๊ฐ€ false์ผ๋•Œ์™€, show์˜ display๊ฐ€ false์ผ๋•Œ๋Š” ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค.
      • v-show ํ”„๋กœํผํ‹ฐ์˜ html ํƒœ๊ทธ๊ฐ’์„ ํ™•์ธํ•ด๋ณด๋ฉด style=โ€display:none;โ€ ์ด ํ™•์ธ๋œ๋‹ค.(ํƒœ๊ทธ๋Š” ์‚ฌ๋ผ์ง€์ง€์•Š์Œ.)
  • v-for ๋ฐ˜๋ณต๋ฌธ์€ ๋ฐฐ์—ด์„ mapping ํ•  ์ˆ˜ ์žˆ๋‹ค. ์‚ฌ์šฉํ•  ๋•Œ v-for:โ€(animal,index) in animalsโ€ ํ”„๋กœํผํ‹ฐ๋ฅผ ์ž‘์„ฑํ•ด์ฃผ๊ณ , key๋ฐ”์ธ๋”ฉ์„ ํ•ด์ฃผ๋Š”๋ฐ :key=โ€indexโ€ ์„ ์ž‘์„ฑํ•ด์ค€๋‹ค.
  • v-if์™€ v-for๋Š” ํƒœ๊ทธ ํ•œ๊ฐœ์—์„œ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋ฉด ์•ˆ๋œ๋‹ค. โ†’ ๋งŒ์•ฝ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์œผ๋ฉด ๋‹ค๋ฅธ ํƒœ๊ทธ(template ํƒœ๊ทธ)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ถ„๋ฆฌ์‹œ์ผœ์ค€๋‹ค.

methods

  • methods ์•ˆ์˜ ๋ฐ์ดํ„ฐ ๋ณ€์ˆ˜์—๋Š” this๋ฅผ ๋ถ™์—ฌ์ค€๋‹ค.
  • Arrow function์„ ์“ฐ๊ฒŒ ๋˜๋ฉด, this๊ฐ€ ์ง€์—ญ๋ณ€์ˆ˜๊ฐ€ ๋˜๊ธฐ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ์˜ this ๋ฅผ ๊ฐ€๋ฅดํ‚ค์ง€ ๋ชปํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ๋ฌด์กฐ๊ฑด ์ผ๋ฐ˜ํ•จ์ˆ˜๋ฅผ ์จ์•ผํ•œ๋‹ค.
  • this๋ฅผ console.log๋กœ ํ™•์ธํ•ด๋ณด๋ฉด Proxy๋ผ๋Š” ๊ฐ์ฒด๊ฐ€ ํ™•์ธ์ด ๋œ๋‹ค. vue3์—์„œ ์ ์šฉ๋œ ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋œ ๋ฐ์ดํ„ฐ ์กฐํšŒ ํ‚ค์›Œ๋“œ์ด๋‹ค.
  • ๋™์ ์ธ value ํŒŒ๋ผ๋ฏธํ„ฐ์™€ event๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ์œ„ํ•ด์„œ๋Š” $event ($e ์•„๋‹˜,, ๋ฌด์กฐ๊ฑด $event)๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.