nastya_zholudeva
@nastya_zholudeva

Как заполнить динамически созданные input через v-model?

Мне нужно динамически генерировать инпуты. Ну и через v-model получать и заполнять данные
Попробовала сама реализовать тут. Получать данные получается, а вот заполнять - нет(
  • Вопрос задан
  • 171 просмотр
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
Добавьте свойство value каждому элементу массива, его и указывайте в v-model. А item сделайте из обычного свойства вычисляемым.

data: () => ({
  entity: [
    { id: 1, name:   'title', value:   'default title' },
    { id: 2, name: 'address', value: 'default address' },
  ],
}),
computed: {
  item() {
    return this.entity.reduce((acc, n) => (acc[n.name] = n.value, acc), {});
  },
},

<div v-for="n in entity" :key="n.id">
  <label>
    {{ n.name }}
    <input type="text" v-model="n.value">
  </label>
</div>
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы