Objektien iterointi Vue:ssa
Objekteja iteroidaan myös käyttämällä
v-for-direktiiviä. Katsotaan,
kuinka se tehdään.
Oletetaan, että meillä on seuraava
objekti:
data() {
return {
obj: {a: 1, b: 2, c: 3},
}
}
Iteroidaan tämä objekti loopilla ja tulostetaan sen elementit:
<template>
<p v-for="elem in obj">
{{ elem }}
</p>
</template>
Ja nyt tulostetaan sekä avaimet että elementit:
<template>
<p v-for="(elem, key) in obj">
{{ key }} {{ elem }}
</p>
</template>
Ja nyt tulostetaan myös objektin elementtien järjestysnumerot:
<template>
<p v-for="(elem, key, index) in obj">
{{ index }}
{{ key }}
{{ elem }}
</p>
</template>
Annettu seuraava objekti:
{
user1: '100
,
user2: '200
,
user3: '300
,
}
Käyttäen v-for:tä, tulosta ruudulle seuraava:
<ul>
<li>100$</li>
<li>200$</li>
<li>300$</li>
</ul>
Annettu seuraava objekti:
{
user1: '100
,
user2: '200
,
user3: '300
,
}
Käyttäen v-for:tä, tulosta ruudulle seuraava:
<ul>
<li>user1 - 100$</li>
<li>user2 - 200$</li>
<li>user3 - 300$</li>
</ul>
Muokkaa edellistä tehtävää niin, että
jokaisen li:n lopussa on myös elementin
järjestysnumero objektissa. Näin:
<ul>
<li>user1 - 100$ - 0</li>
<li>user2 - 200$ - 1</li>
<li>user3 - 300$ - 2</li>
</ul>
Muokkaa edellistä tehtävää niin, että numerot alkavat nollan sijasta ykkösestä. Näin:
<ul>
<li>user1 - 100$ - 1</li>
<li>user2 - 200$ - 2</li>
<li>user3 - 300$ - 3</li>
</ul>