Ehdot silmukoissa Vue:ssa
Elementtejä silmukoissa kierrettäessä
voidaan asettaa ehtoja.
Mutta v-for- ja v-if-direktiivit
on kirjoitettava eri elementteihin,
muuten tulee konflikti. Välttääkseen
konfliktin, v-for-direktiivi
käytetään template-elementissä,
ja v-if-direktiivi - suoraan
lisättävään elementtiin.
Katsotaanpa esimerkkiä. Oletetaan, että meillä on seuraava taulukko:
data() {
return {
arr: [1, 2, 3, 4, 5],
}
}
Kierretään tämä taulukko silmukalla:
<template>
<ul>
<li v-for="elem in arr">
{{ elem }}
</li>
</ul>
</template>
Asetetaan nyt ehto näytettäville elementeille:
<template>
<ul>
<template v-for="elem in arr">
<li v-if="elem % 2 === 0">
{{ elem }}
</li>
</template>
</ul>
</template>
Annettu seuraava taulukko:
data() {
return {
items: [1, -2, 3, -4, 5],
}
}
Kierrä tämä taulukko silmukalla ja tulosta vain taulukon positiiviset elementit.