Props and Emit
Props ๋ก ๋ฐ์ดํฐ ์ ๋ฌํ๊ธฐ
๋ชจ๋ component instance ์๋ ์์ฒด ๊ฒฉ๋ฆฌ ๋ ๋ฒ์๊ฐ ์๋ค
์ฆ, ํ์ component์ template์์ ์์ ๋ฐ์ดํฐ๋ฅผ ์ง์ ์ฐธ์กฐ ํ ์ ์์ผ๋ฉฐ, ๊ทธ๋ ๊ฒ ํด์๋ ์ ๋จ!
๋ฐ์ดํฐ๋
props
option์ ์ฌ์ฉํ์ฌ ํ์ component๋ก ์ ๋ฌ ๋ ์ ์๋ค
Prop
์์ component์ ์ ๋ณด๋ฅผ ์ ๋ฌํ๊ธฐ์ํ ์ฌ์ฉ์ ์ง์ ํน์ฑ
ํ์ component๋
props
option์ ์ฌ์ฉํ์ฌ ์์ component๋ก๋ถํฐ ๋ฐ์ ๊ฒ์ผ๋ก ๊ธฐ๋๋๋props
๋ฅผ ๋ช ์์ ์ผ๋ก ์ ์ธํด์ผ ํจ
ex)
Parent.vue - ์์ ์ปดํฌ๋ํธ
Child.vue - ํ์ ์ปดํฌ๋ํธ
camelCase
vs kebab-case
camelCase
vs kebab-case
HTML ์์ฑ์ ๋์ ๋ฌธ์๋ฅผ ๊ตฌ๋ถํ์ง ์์ผ๋ฏ๋ก ๋ฌธ์์ด์ด ์๋ ํ ํ๋ฆฟ์ ์ฌ์ฉํ ๋
camelCased
prop ์ด๋ฆ์ ํด๋นํ๋kebab-case
๋ฅผ ์ฌ์ฉํด์ผ ํจ
๋ฆฌํฐ๋ด
vs ๋์
๋ฆฌํฐ๋ด
vs ๋์
๋ฆฌํฐ๋ด prop์ ์ซ์๊ฐ ์๋ ๋ฌธ์์ด๋ก ์ ๋ฌ๋จ
JavaScript ์ซ์๋ฅผ ์ ๋ฌํ๋ ค๋ฉด ๊ฐ์ด JavaScript ํํ์์ผ๋ก ํ๊ฐ๋๋๋ก
v-bind
or:
๋ฅผ ์ฌ์ฉํด์ผ ํจ!
๋จ๋ฐฉํฅ ๋ฐ์ดํฐ ํ๋ฆ
๋ชจ๋ props๋ ํ์ ์์ฑ๊ณผ ์์ ์์ฑ ์ฌ์ด์ ๋จ๋ฐฉํฅ ๋ฐ์ธ๋ฉ์ ํ์ฑํจ
์์ ์์ฑ์ด ์ ๋ฐ์ดํธ ๋๋ฉด ํ์๋ก ํ๋ฅด๊ฒ ๋์ง๋ง, ๊ทธ ๋ฐ๋๋ ์ ๋จ!
์ด๋ ๊ฒ ํ๋ฉด ํ์ ์ปดํฌ๋ํธ๊ฐ ์ค์๋ก ๋ถ๋ชจ์ ์ํ๋ฅผ ๋ณ๊ฒฝํ์ฌ ์ฑ์ ๋ฐ์ดํฐ ํ๋ฆ์ ์ถ๋ก ํ๊ธฐ ์ด๋ ต๊ฒ ๋ง๋๋ ๊ฒ์ ๋ฐฉ์งํ ์ ์์
vue.js ๋ ์๋ฐฉํฅ ๊ฐ๋ฅ
v-model ์ ์๋ฐฉํฅ
emit ํ์ง ์์๋ ๊ฐ๋ฅ
but, vue๋ ์ปดํฌ๋ํธ ๊ฐ ์๋ฐฉํฅ ๊ฐ๋ฅํ์ง๋ง ๋จ๋ฐฉํฅ์ ์ฐ๋๊ฒ์ ๊ถ์ฅ!
๋จ๋ฐฉํฅ flow ๋ฅผ ๋ง๋ค์ด์ผ ํ๋ค!
Event Emit
์ปดํฌ๋ํธ์ ํต์ ๋ฐฉ๋ฒ ์ค ํ์ ์ปดํฌ๋ํธ์์ ์์ ์ปดํฌ๋ํธ๋ก ํต์ ํ๋ ๋ฐฉ์
์ด๋ฒคํธ ๋ฐ์ ์ฝ๋ ํ์
ํ์ ์ปดํฌ๋ํธ์
method
๋life-cycle hook
๊ณผ ๊ฐ์ ๊ณณ์ ์๋์ ๊ฐ์ ์ฝ๋๋ฅผ ์ถ๊ฐํ๋คํด๋น ์ด๋ฒคํธ๋ฅผ ์์ ํ๊ธฐ ์ํด ์์ component์ ํ ํ๋ฆฟ์ ์๋์ ๊ฐ์ด ๊ตฌํ
+
Youtube-browser ๋ง๋ค๊ธฐ
1. Google Developer Console์์ Youtube API key ๋ฐ๊ธฐ
2. axios
์ค์น
axios
์ค์น
3. ๊ณต์ ๋ฌธ์๋ก ์ฌ์ฉ๋ฒ ํ์
ํ๊ธฐ
+
vue-filter
install
register
Last updated