ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

๐Ÿ”Ž ์ปดํฌ๋„ŒํŠธ (Component) ๋ž€?

โ–ช๏ธ Vue์˜ ๊ฐ€์žฅ ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ ์ค‘ ํ•˜๋‚˜์ด๋‹ค.

โ–ช๏ธ HTML Element๋ฅผ ํ™•์žฅํ•˜์—ฌ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ๋ฅผ ์บก์Аํ™”.

โ–ช๏ธ Vue Component๋Š” Vue Instance์ด๊ธฐ๋„ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋“  ์˜ต์…˜ ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉ.

โ–ช๏ธ Life Cycle Hook ์‚ฌ์šฉ ๊ฐ€๋Šฅ.

โ–ช๏ธ ์ „์—ญ ์ปดํฌ๋„ŒํŠธ์™€ ์ง€์—ญ ์ปดํฌ๋„ŒํŠธ.

 

<template> ์•ˆ์—๋Š” root element๊ฐ€ ํ•œ ๊ฐœ๋งŒ ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

 


๐Ÿ’ก ์ปดํฌ๋„ŒํŠธ๊ฐ„ ํ†ต์‹ .

โ–ช๏ธ ์ƒ์œ„(๋ถ€๋ชจ)-ํ•˜์œ„(์ž์‹) ์ปดํฌ๋„ŒํŠธ ๊ฐ„์˜ data ์ „๋‹ฌ ๋ฐฉ๋ฒ•.

โ–ช๏ธ ๋ถ€๋ชจ์—์„œ ์ž์‹ : props๋ผ๋Š” ํŠน๋ณ„ํ•œ ์†์„ฑ์„ ์ „๋‹ฌ. (Pass Props)

โ–ช๏ธ ์ž์‹์—์„œ ๋ถ€๋ชจ : event๋กœ๋งŒ ์ „๋‹ฌ ๊ฐ€๋Šฅ. (Emit Event)

 

๋ถ€๋ชจ๋Š” ์ž์‹์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์ž์‹์€ ๋ถ€๋ชจ์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•  ์ˆ˜ ์—†๋‹ค. (๋‹จ๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ์ „๋‹ฌ)

 

โœ”๏ธ ์ƒ์œ„์—์„œ ํ•˜์œ„ ์ปดํฌ๋„ŒํŠธ๋กœ data ์ „๋‹ฌ.

โ–ช๏ธ ํ•˜์œ„ ์ปดํฌ๋„ŒํŠธ๋Š” ์ƒ์œ„ ์ปดํฌ๋„ŒํŠธ์˜ ๊ฐ’์„ ์ง์ ‘ ์ฐธ์กฐ ๋ถˆ๊ฐ€๋Šฅ.

โ–ช๏ธ data์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ props ์†์„ฑ์˜ ๊ฐ’์„ template์—์„œ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅ.

 

์˜ˆ์ œ) ์ปดํฌ๋„ŒํŠธ์— ๊ฐ์ฒด ์ „๋‹ฌ.

 

์˜ˆ์ œ) ํ•˜์œ„์—์„œ ์ƒ์œ„ ์ปดํฌ๋„ŒํŠธ๋กœ ์ด๋ฒคํŠธ์ „๋‹ฌ.

'Front-end > Vuejs' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Vuejs] Vue Event  (0) 2022.05.10
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
Total
Today
Yesterday