リストレンダリングについて
リストレンダリングとは、配列(リスト)、その繰り返し処理に基づいてレンダリングを行うものです。
レンダリングとは「あるルールに従って記述されたデーターを、人が読める形に整形してブラウザに出力すること」です。
<ul>
<li>ピアノ</li>
<li>ギター</li>
<li>オルガン</li>
</ul>
この状態はまだ、HTMLというルールに沿って記述されたテキストで、HTMLを知らない人からすると意味がわからないと思います。
これをブラウザでレンダリングすると、だれが見てもピアノ、ギター、オルガンのリストとして見えます。
繰り返し処理はプログラミングの基本的な制御構文の1つで、指定した条件を満たす間は、特定の処理を繰り返す制御です。
リストレンダリングを実現する レンダリング「v-for」
Vue.jsではv-forを使ってリストレンダリングを行うことができます。v-forは、Vueインスタンス内に用意された配列を自動的にレンダリングします。
<body> <div id=”app”> <ul> <li v-for=”(item, i ) in fruits” :key=”i”>{{item}}</li> </ul> </div> </body> | 配列fruitsの中身がある間は繰り返しを実行することを意味します。変数itemに配列要素が入り、変数iに配列のindex(最初の要素を0として1ずつ増えていく連番)が入ります。 また、:key=”i”という形でindexをkey属性にしています。このkey属性をするのは、レンダリングしたHTML要素の1つずつが、配列のどの配列要素と紐づいているのかをVue.jsが識別できるようにするためです。 keyを指定していない場合、Vue.jsはレンダリングした要素とデータの紐づきを知ることができません。そのため、例えば画面側から一部の行を削除するような場合に、データとDOMにずれが生じることで意図しない動作になる可能性があります。 keyは省略可能ですが、Vue.js公式サイトでも推奨されているので、特別な理由がない限りkeyを指定することをおすすめします。 |
- {{item}}