[Vue.js] 初歩の初歩:データ配列の出力 (v-for)

HTML

<!DOCTYPE html>
<html>
  <head>
    <title>Vue.js test</title>
  </head>
  <body>

    <div id="vueelement">
      <p v-for="line in datas">ID={{ line.id }}, Text={{ line.text }}</p>
    </div>

    <script src="https://cdn.jsdelivr.net/npm/vue@2.7.11/dist/vue.js"></script>
    <script src="vue_main.js"></script>

  </body>
</html>

Javascript : vue_main.js

"use strict"

let jsonData;
fcreate();

new Vue({ 
  el: '#vueelement',
  data: jsonData
});

function fcreate(){
  jsonData = {
    datas:[
      { id: 1, text: "sample1"},
      { id: 2, text: "sample2"},
      { id: 3, text: "sample3"}
    ]
  }
}

結果

補足

v-for の流れはこんな感じ

  1. el = vueelement と指定されているので、id=vueelement となっているdiv が対象となる
  2. その中にある 要素が v-for をコールする、このv-for は「datas」のデータを「line」として格納せよとしている
  3. その要素内のマスタッシュ構文では「line」のデータを用いている

el となっているオブジェクトに v-for を組み込むことはできない (vue.jsでエラーとなる)
必ず 子供を持つ

ちなみに、Vue で記載している data には 別でJsonデータを作成して渡すようにした
もちろん直接指定もできるが、実際にこの v-for を活用するなら この形が多いと思ったので、それをサンプルにした

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Share via
Copy link