В Vue.js для указания составного v-model
в цикле вы можете использовать индекс каждого элемента в массиве и объединить его с ключевым словом v-model
при определении атрибута v-model
.
Допустим, у вас есть массив объектов items
, и вы хотите создать несколько текстовых полей для каждого элемента массива. Вы можете использовать v-for
для создания полей в цикле и установить v-model
в соответствии с текущим индексом элемента в массиве.
Пример:
<div v-for="(item, index) in items" :key="index"> <input v-model="items[index].value" /> </div>
В этом примере мы используем v-for
для создания нескольких текстовых полей - по одному для каждого элемента массива items
. Ключ :key="index"
используется для поддержки реактивности при изменении порядка элементов в массиве.
Атрибут v-model
устанавливается для каждого элемента массива, используя текущий индекс и свойство value
каждого объекта item
. Таким образом, при изменении значения в текстовом поле, изменения автоматически распространятся на соответствующий элемент в массиве.
Например, если вы измените значение текстового поля для элемента с индексом 0, то items[0].value
будет автоматически обновлено с новым значением.
Также, если вы хотите объединить несколько полей в составное значение, вы можете использовать объект для каждого v-model
:
<div v-for="(item, index) in items" :key="index"> <input v-model="items[index].firstName" /> <input v-model="items[index].lastName" /> <input v-model="items[index].age" /> </div>
В этом примере мы используем несколько полей ввода для представления имени, фамилии и возраста каждого элемента в массиве items
. Каждое поле ввода связано с определенным свойством объекта item
, и при изменении значения в поле ввода, значения в объекте item
будут обновлены соответствующим образом.