๊ฑ€๊ฑ€๋‹ฌ๊ฑ€๊ผฌ๋งˆ
gromit&Stories๐Ÿง€
๊ฑ€๊ฑ€๋‹ฌ๊ฑ€๊ผฌ๋งˆ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (17)
    • ๐Ÿ—‚๏ธ Front (13)
      • ๐Ÿ–ฑ๏ธ JavaScript (5)
      • ๐Ÿ–ฑ๏ธ TypeScript (0)
      • ๐Ÿ–ฑ๏ธ HTML (0)
      • ๐Ÿ–ฑ๏ธ CSS (0)
      • ๐Ÿ–ฑ๏ธ React (7)
      • ๐Ÿ–ฑ๏ธ Vue (1)
      • ๐Ÿ–ฑ๏ธ Angular (0)
      • ๐Ÿ–ฑ๏ธ NodeJs (0)
      • ๐Ÿ–ฑ๏ธ HTTP (0)
    • ๐Ÿ—‚๏ธ BACK (0)
      • ๐Ÿ–ฑ๏ธ JAVA (0)
      • ๐Ÿ–ฑ๏ธ DB (0)
    • ๐Ÿ—‚๏ธ ALGORITHM (0)
    • ๐Ÿ—‚๏ธ ETC. (4)
      • ๐Ÿ–ฑ๏ธ CS (0)
      • ๐Ÿ–ฑ๏ธ IDE (0)
      • ๐Ÿ–ฑ๏ธ Git (0)
      • ๐Ÿ–ฑ๏ธ TIL (0)
      • ๐Ÿ–ฑ๏ธ AI (1)
      • Ref. (3)
    • ์žก๋‹ด ๐Ÿ’ฌ (0)

์ธ๊ธฐ ๊ธ€

์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
hELLO ยท Designed By ์ •์ƒ์šฐ.
๊ฑ€๊ฑ€๋‹ฌ๊ฑ€๊ผฌ๋งˆ

gromit&Stories๐Ÿง€

๐Ÿ—‚๏ธ Front/๐Ÿ–ฑ๏ธ Vue

[Vue] Watch, Computed ์ฐจ์ด์ 

2023. 10. 3. 01:25
728x90
๋ฐ˜์‘ํ˜•

method

method๋Š” ์ฃผ๋กœ ๋‘๊ฐ€์ง€ ๊ฒฝ์šฐ์— ์‚ฌ์šฉ

1. ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ

2. ์ด๋ฒคํŠธ ๋ฐ”์ธ๋”ฉ

๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ์„ ์œ„ํ•ด ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ

์ฆ‰, ์ค‘๊ด„ํ˜ธ ์‚ฌ์ด์— ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด ํ…œํ”Œ๋ฆฟ์—์„œ vue ์ธ์Šคํ„ด์Šค๋กœ ์•„์›ƒ์†Œ์‹ฑํ•˜๋Š” ๊ฒฝ์šฐ ๋ฉ”์„œ๋“œ๋Š” ์ปดํฌ๋„ŒํŠธ ๋ฆฌ๋ Œ๋”๋ง ์ฃผ๊ธฐ์— ๋งž์ถฐ ๋งค๋ฒˆ ์‹คํ–‰๋จ

๊ทธ๋Ÿฌ๋ฏ€๋กœ ๋ณ€๋™ ์‚ฌํ•ญ์ด ์ƒ๊ธฐ๋ฉด ํ…œํ”Œ๋ฆฟ์„ ์žฌํ‰๊ฐ€ํ•˜๊ณ  ํ•ด๋‹น ํ…œํ”Œ๋ฆฟ์— ํ˜ธ์ถœ๋œ ๋ชจ๋“  ๋ฉ”์„œ๋“œ๋ฅผ ๋‹ค์‹œ ํ˜ธ์ถœํ•˜๊ฒŒ ๋จ

๊ทธ๋ž˜์„œ ์ด๋ฒคํŠธ ๋ฐ”์ธ๋”ฉ ์‹œ์—๋Š” method๋ฅผ ์ฃผ๋กœ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋Š” ๊ฒƒ

 

 

computed

computed(์—ฐ์‚ฐ) ํ”„๋กœํผํ‹ฐ๋Š” ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ์—๋งŒ ์“ฐ์ž„

์ด๋ฒคํŠธ ๋ฐ”์ธ๋”ฉ์—๋Š” ์•Œ๋งž์ง€ ์•Š์Œ

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

์ฆ‰, computed๋Š” ๋””ํŽœ๋ด์‹œ๋กœ ๋‚ด๋ถ€์— ์“ฐ์ธ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๊ฒฝ์šฐ์—๋งŒ ์žฌ์‹คํ–‰ (๋ฆฌ์—‘ํŠธ useEffect์™€ ์œ ์‚ฌํ•œ ๊ธฐ๋Šฅ์ธ๋“ฏ)

 

 

watch

watch(๊ฐ์‹œ์ž)๋Š” ํ…œํ”Œ๋ฆฟ์— ์ง์ ‘ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ

ํ…œํ”Œ๋ฆฟ ๋‚ด๋ถ€์—์„œ ์ฐธ์กฐํ•˜์ง€ ์•Š์ง€๋งŒ computed๋ฅผ ํฌํ•จํ•ด ์–ด๋А ํ”„๋กœํผํ‹ฐ๋“  watch๋กœ ๊ฐ์‹œ ๊ฐ€๋Šฅํ•จ!

๊ฒŒ๋‹ค๊ฐ€ ๋ฐ์ž‰ํ„ฐ ๋ณ€๊ฒฝ์— ๋Œ€ํ•œ ๋ฐ˜์‘์„ ์ฝ”๋“œ๋กœ ์‹คํ–‰ ๊ฐ€๋Šฅ

์˜ˆ๋ฅผ ๋“ค์–ด http ์š”์ฒญ์„ ๋ณด๋‚ด๊ฑฐ๋‚˜ ํƒ€์ด๋จธ๋ฅผ ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ๋กœ์ปฌ์Šคํ† ๋ฆฌ์ง€์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ์ž‘์—… ๋“ฑ์ด ์žˆ์Œ

์ฃผ๋กœ ๋ฐ์ดํ„ฐ๊ฐ€ ์•„๋‹Œ ์—…๋ฐ์ดํŠธ์— watch๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•จ.

๋ฐ”๋€Œ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ† ๋Œ€๋กœ ๋ฐ์ดํ„ฐ๊ฐ€ ์•„๋‹ˆ๋ผ ๋‚ด๋ถ€์—์„œ ์—…๋ฐ์ดํŠธํ•˜๋Š” ์ž‘์—…์ด ์žˆ์„ ๊ฒฝ์šฐ ์‚ฌ์šฉ

๋”๋ณด๊ธฐ

watch๋ณด๋‹ค๋Š” computed๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฒƒ์ด ์ข‹๋‹ค๊ณ  ํ•จ.
watch๋กœ ๊ตฌํ˜„ํ•  ๊ฒฝ์šฐ ์ค‘๋ณต ๊ณ„์‚ฐ์ด ์ผ์–ด๋‚˜๊ฑฐ๋‚˜ ์ฝ”๋“œ ๋ณต์žก๋„๊ฐ€ ๋†’์•„์ง€๊ธฐ๋„ ํ•˜๊ณ , ๊ณต์‹๋ฌธ์„œ์—์„œ๋„ ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ watch๋ณด๋‹ค๋Š” computed๊ฐ€ ๋” ์ ํ•ฉํ•˜๋‹ค๊ณ  ํ•จ

 

 

 

 


๐Ÿ“ Summary

method - ์ด๋ฒคํŠธ ๋ฐ”์ธ๋”ฉ
- ์ปดํฌ๋„ŒํŠธ ๋ Œ๋”๋ง ์ฃผ๊ธฐ์— ๋งž์ถฐ ๋งค๋ฒˆ ์‹คํ–‰
computed - ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ
- ์˜์กด ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝ ์‹œ์—๋งŒ ์žฌ์‹คํ–‰
watch - ํ…œํ”Œ๋ฆฟ์— ์ง์ ‘ ์‚ฌ์šฉ X
- ๋ฐ”๋€Œ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ† ๋Œ€๋กœ, ๋ฐ์ดํ„ฐ๊ฐ€ ์•„๋‹ˆ๋ผ ๋‚ด๋ถ€์—์„œ ์—…๋ฐ์ดํŠธํ•˜๋Š” ์ž‘์—…์ด ์žˆ์„ ๊ฒฝ์šฐ ์‚ฌ์šฉ
- ๊ฐ์‹œํ•˜๋ ค๋Š” ํ”„๋กœํผํ‹ฐ ์ด๋ฆ„์„ ์‚ฌ์šฉ

 

๐Ÿ› ๏ธ Reference

  • ๊ณต์‹๋ฌธ์„œ
  • udemy-vue-router-composition-api 
  • ์ธํ”„๋Ÿฐ-์บกํŒ ๋ทฐ๊ฐ•์˜
  • ์ฐธ๊ณ  ๋ธ”๋กœ๊ทธ
728x90
๋ฐ˜์‘ํ˜•
    ๊ฑ€๊ฑ€๋‹ฌ๊ฑ€๊ผฌ๋งˆ
    ๊ฑ€๊ฑ€๋‹ฌ๊ฑ€๊ผฌ๋งˆ

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