@pavelkunyavskiy

Как добавлять данные в массив с v-model?

Есть такая data

data () {
    return {
      content: [
        {
          text: '',
          image: '',
          caption: ''
        }
      ]
    }
  }


И разметка

<input type="text" v-model="content.text">
<input type="text" v-model="content.image">
<input type="text" v-model="content.caption">
<button @click="submitData">submit</button>


В данном виде ничего не работает. Почему и как добавлять данные, например в массив content.text?

И что если надо добавить несколько объектов в массив content? Как тогда быть? Какая разметка должна быть, как Вью будет разделять какому объекту принадлежит каждый инпут?
  • Вопрос задан
  • 1662 просмотра
Решения вопроса 2
kulakoff
@kulakoff Куратор тега Vue.js
Vue.js developing
Берете v-for директиву, рендерите список элементов:

<div v-for="item in content">
<input type="text" v-model="item.text">
<input type="text" v-model="item.image">
<input type="text" v-model="item.caption">
</div>
Ответ написан
@bagzon
Backend PHP, NodeJs, JS
Ну тебе надо пройтись циклом по content и присвоить v-model="content[k].text" для каждого инпута, примерно
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы