【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の使い方をサンプルコードで解説、でした。


ディスカッション
コメント一覧
まだ、コメントがありません