Условия в циклах в Vue

При переборе элементов циклами можно накладывать условия. Но директивы v-for и v-if нужно писать на разных тегах, иначе будет конфликт. Во избежания конфликта директиву v-for применяют к тегу template, а директиву v-if - непосредственно к вставляемому тегу.

Давайте посмотрим на примере. Пусть у нас есть следующий массив:

data() { return { arr: [1, 2, 3, 4, 5], } }

Переберем этот массив циклом:

<template> <ul> <li v-for="elem in arr"> {{ elem }} </li> </ul> </template>

А теперь наложим условие на показываемые элементы:

<template> <ul> <template v-for="elem in arr"> <li v-if="elem % 2 === 0"> {{ elem }} </li> </template> </ul> </template>

Дан следующий массив:

data() { return { items: [1, -2, 3, -4, 5], } }

Переберите этот массив циклом и выведите только положительные элементы массива.



Чат с GPT Компилятор