Directives
Vue ํ๋ ์์ํฌ์์ Directives (์ง์๋ฌธ) ์ vue ์๋ฆฌ๋จผํธ์ ์ ์ฉ๋๋ ํน๋ณํ ์์ฑ์ด๋ค.
Vue JS ๊ณต์๋ฌธ์์์๋ ํ์ธ ๊ฐ๋ฅํ๋ค.
v-text
vue ๋ด๋ถ๊ฐ์ด vue ์๋ฆฌ๋จผํธ ๋ณ์๋ก ์ง์ ๋๋ค.
v-html
v-show
v-if
v-else
v-else-if
v-for
v-on
๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ ์ง์๋ฌธ์ด๋ค.
@ ์ผ๋ก ์ถ์ฝํด์ ์ฌ์ฉํ๋ค.
.stop- event.stopPropagation() ํธ์ถ
.prevent- event.preventDefault() ํธ์ถ
.capture- ์บก์ณ๋ชจ๋์ ์ด๋ฒคํธ๋ฆฌ์ค๋ ์ถ๊ฐ (?)
.self- ์ด ์๋ฆฌ๋ฉํธ์์ event๊ฐ dispatched ๋์ ๋๋ง ํธ๋ฆฌ๊ฑฐ
.{keyCode | keyAlias}- ํน์ ํค์์๋ง trigger
.native- root element์ native event๋ฅผ listen (?)
.once- ํ๋ฒ๋ง ํธ๋ฆฌ๊ฑฐ!
.left- ๋ง์ฐ์ค ์ผ์ชฝํด๋ฆญ์๋ง ํธ๋ฆฌ๊ฑฐ
.right- ๋ง์ฐ์ค ์ค๋ฅธ์ชฝํด๋ฆญ์๋ง ํธ๋ฆฌ๊ฑฐ
.middle- ๋ง์ฐ์ค ๊ฐ์ด๋ฐํด๋ฆญ์๋ง ํธ๋ฆฌ๊ฑฐ
.passive- attacheds a DOM event with {passive: true}
v-bind
v-on ๊ณผ ๋๋ถ์ด ๊ฐ์ฅ ๋ง์ด ์ฐ๋ directive ์ด๋ค.
: ์ถ์ฝํด์ ๋ง์ด ์ฌ์ฉํ๋ค.
.prop- vue ์์ฑ๋์ DOM ํ๋กํผํฐ๋ฅผ ๋ฐ์ธ๋ฉํด์ค๋ค.
.camel- kebab-case ์์ฑ์ camel-case ๋ก ๋ณ๊ฒฝํด์ค๋ค. (
app-blog->appBlog)
- kebab-case ์์ฑ์ camel-case ๋ก ๋ณ๊ฒฝํด์ค๋ค. (
.sync
v-model
๋ฐ์ดํฐ ๋ฐ์ธ๋ฉ์์ ์ฌ์ฉํ๋ฉฐ <input> <select> <textarea> ์์ ์ฌ์ฉ๊ฐ๋ฅํ๋ค.
modifiers ๋ ์๋ 3๊ฐ์ง ์ด๋ค.
.lazy- input ๋์ ์ change event ๋ฅผ listen ํ๋ค.
- ์ ๋ ฅํ ๋ ๋ง๋ค ๊ฐ์ด ๋ฐ์ธ๋ฉ๋์ง ์๊ณ ๋์ค์ ๋ณ๊ฒฝ
.number- ๋ฌธ์์ด์ ์ซ์๋ก ๋ฐ๊ฟ์ค๋ค.
.trim- ์ ๋ ฅ๊ฐ์ด ๊ณต๋ฐฑ์ ์ ๊ฑฐํ๋ค.
v-pre
์๋ฆฌ๋จผํธ์ compile ์ ๊ฑด๋๋ด๋ค. `` ์ ๊ทธ๋๋ก ์ถ๋ ฅ ๊ฐ๋ฅํ๋ค.
v-cloak
[v-cloak]{ display: none } ๊ณผ ํจ๊ป ์ฌ์ฉํ๋ฉฐ js ๋ฅผ ๋ชจ๋ ๋ถ๋ฌ์ฌ๋๊น์ง un-compiled ๋ html ์ ๋ชจ๋ ์จ๊ฒจ์ค๋ค.
v-once
๋ทฐ ์๋ฆฌ๋จผํธ ํน์ ์ปดํฌ๋ํธ๋ฅผ ํ๋ฒ๋ง ๋๋ํ๋ค.
์ฐธ๊ณ ์๋ฃ
โ Vue Store