vueのイテレーションがjavascriptと違った話。
好きなプリキュアシリーズはハグっとプリキュア。えぬわいです。
vueのv-forディレクティブとjavascriptのforが個人的にだいぶ違ってて、イライラしてしまったんですよね。javascriptの時は、
const dict = { a: 'x', b: 'y'} for (const x in dict) { console.log(x) }
これは、
a b
となるので、すなわち、key を取り出してるんですよね。配列の場合は、x は、添字、インデックスになるんですけど、v-forの場合は、
<p v-for="x in dict" :key="x"> {{ x }} </p>
とすると、
<p>x</p> <p>y</p>
が生まれるんですよね。しかもofも同じ動作をするっていう謎仕様。2 つもいる???jsと同じようにすればいいのに。
んで、vueのv-forで、keyを引っ張り出すには、
<p v-for="(value, key) in dict"> {{ key }}: {{ value }} </p>
この方法しかないみたいだ。もう!!!!
常に、2 つ取り出せるということを覚えといた方が良さそうだ。