@Skaper777
Javascript dev

Как правильно связывать v-model события change компонента input во Vue?

С событием input работает, а с change нет.
Вот компонент:
<div>
    <input
      @input="updateValue($event.target.value)"
      @change="updateValueChange($event.target.value)"
      :value="value"     
    />
/>

props: ['value'] 
methods: {
    updateValue(value) {
      this.$emit('input', value)
    },

    updateValueChange(value) {
      this.$emit('change', value)
    },
}
  • Вопрос задан
  • 3621 просмотр
Решения вопроса 1
coderisimo
@coderisimo

Внутренне v-model использует разные свойства и генерирует разные события для различных элементов ввода:

элементы для ввода текста и многострочного текста используют свойство value и событие input;
чекбоксы и радиокнопки используют свойство checked и событие change;
выпадающие списки используют свойство value и событие change.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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