Vue.jsをAtomic Designで構築していて、そのAtomsにdlタグをfor文を使って書いたのでその書き方を。
まずは出来上がりのHTMLはこんな感じです。
こう書きたかった
<dl>
<dt>1</dt>
<dd>11</dd>
<dd>12</dd>
<dd>13</dd>
<dt>2</dt>
<dd>21</dd>
<dd>22</dd>
<dd>23</dd>
<dt>3</dt>
<dd>31</dd>
<dd>32</dd>
<dd>33</dd>
</dl>
こう書くなら簡単だけど。。
これはListの役目をしてない。。
<dl>
<dt>1</dt>
<dd>11</dd>
<dd>12</dd>
<dd>13</dd>
</dl>
<dl>
<dt>2</dt>
<dd>21</dd>
<dd>22</dd>
<dd>23</dd>
</dil>
<dl>
<dt>3</dt>
<dd>31</dd>
<dd>32</dd>
<dd>33</dd>
</dl>
Atoms
atoms.vue
<template lang="pug">
dl
template(v-for="(title, index) in titleList")
dt(
) {{ title }}
dd(
v-for="text in list[index]"
) {{ text }}
</template>
const titleList = [1, 2, 3];
const list = [[11, 12, 13], [21, 22, 23], [31, 32, 33]];
dtとddをdivで囲ってますが、HTML5の記法としては有りのようなのでこれで良いかと。。
kanさんのご指摘でtemplate
を使えばdiv
を使わなくても良くなったので修正しました。
他に良い書き方があれば教えてください。。