【Vue.js】v-forの使い方をサンプルコードで解説
手っ取り早くこのページのサンプルコードを検証するには、下記のvueライブラリを事前に読み込んでおいてください。
v-forとは?要素をループさせ表示できる機能
v-forとは、要素やdataで定義した配列、オブジェクトを繰り返しを行えるレンダリング手法です。
v-for="値 in 配列orオブジェクト"
基本サンプルコード
サンプルコード
<div id="app-1"> <ul> <li v-for="val in aryList">{{ val }}</li> </ul> </div> <script> new Vue({ el: '#app-1', data: { aryList : ['fuga', 'hoge', 'piyo'], } }); </script>
- {{ val }}
key(キー)も取得
v-for="(値, キー) in 配列orオブジェクト"
と書くことで、値とキーを同時に取得できます。
サンプルコード
<div id="app-2"> <ul> <li v-for="(val, key) in aryList">{{ key }} : {{ val }}</li> </ul> </div> <script> new Vue({ el: '#app-2', data: { aryList : ['fuga', 'hoge', 'piyo'], } }); </script>
- {{ key }} : {{ val }}
オブジェクトも可能
サンプルコード
<div id="app-3"> <ul> <li v-for="(val, key) in aryObj">{{ key }} : {{ val }}</li> </ul> </div> <script> new Vue({ el: '#app-3', data: { aryObj : {fuga : 'ふが', hoge : 'ほげ', piyo : 'ぴよ'}, } }); </script>
- {{ key }} : {{ val }}
for文のような繰り返し回数指定のループ
v-for="数値 in カウント数"
と書くことで、for文のような指定回数の繰り返しループが可能です。
基本サンプルコード
サンプルコード
<div id="app-4"> <ul> <li v-for="i in 5">{{ i }}</li> </ul> </div> <script> new Vue({ el: '#app-4' }); </script>
- {{ i }}
0から数えたい場合
keyを指定することで0からカウントが可能。
サンプルコード
<div id="app-5"> <ul> <li v-for="(n, i) in 5">{{ i }}</li> </ul> </div> <script> new Vue({ el: '#app-5' }); </script>
- {{ i }}
繰り返し時に要素は含めたくない場合
サンプルコードではli要素を繰り返していましたが、あえて要素を指定せず、繰り返し処理の中身だけ表示させたい場合は、templateというタグを使用できます。
templateは要素としては表示されず、中身のみ(ノード)を繰り返すことが出来ます。
サンプルコード
<div id="app-6"> <template v-for="val in aryList"> {{ val }} </template> </div> <script> new Vue({ el: '#app-6', data: { aryList : ['fuga', 'hoge', 'piyo'], } }); </script>
{{ val }}
以上、v-forの使い方をサンプルコードで解説、でした。
ディスカッション
コメント一覧
まだ、コメントがありません