Vue.jsの基本③(ディレクティブ)
●ディレクティブについて
ディレクティブとは、html内でVue独自の属性を記述することによってDOM操作を行うことができるもの。(htmlのタグの中に書くもの)
1)v-on
DOM要素に対してイベントを指定するディレクティブ。
※例えば v-on:click〜 は、@click〜に省略可能。
#app内
<button type="button" v-on:click="hoge">クリックしてね!</button>
-------------------------------------
new Vue({
el: '#app',
methods:{
hoge: function(){
alert('クリックされたよ');
}
}
})
2)v-for
DOM要素に対してforループさせることができるディレクティブ。
v-for=" '個別変数名' in '配列名orオブジェクト名' "
※実際の記述はシングルクオーテーションは付けないで利用する。
<div id="app" v-for="item in items">{{ item }}</div>
-------------------------------------
new Vue({
el: '#app',
data:{
items:[
'aa',
'bb',
'cc',
'dd'
]
}
})
3)v-if、v-show
UIはほぼ同じだが、バインドしたデータがtrueのときは表示されて、falseのときはv-ifはデータ削除、v-showはCSSでdisplay:noneと同じ状態となる。
”v-if はより高い切り替えコストを持っているのに対して、 v-show はより高い初期描画コストを持っています。 そのため、とても頻繁に何かを切り替える必要があれば v-show を選び、条件が実行時に変更することがほとんどない場合は、v-if を選びます。”
#app内
<div v-if="age === 20">20歳だよ</div>
<div v-else-if="age === 30">30歳だよ</div>
-------------------------------------
new Vue({
el: '#app',
data:{
age:20
})
4)v-bind
id、class、style、data〜等html要素に付与する属性値をVueインスタンスのデータ変更に応じて動的に変更する時に使用する。また、例えば 「v-bind:属性名=" "」は、「:属性名=" "」と短縮して入力することが可能。
この記事が気に入ったらサポートをしてみませんか?