Задать вопрос
@qpz

Как закрыть модальное окно кнопкой «отправить», если поле заполнено?

На кнопке «Отправить» висит обработчик события @click="$emit('close')" не совсем красиво, но меня устраивает ¯\_(ツ)_/¯ Не устраивает только то, что эта кнопка закрывает окно, даже если поле пустое, Как добавить условие, и если оно соблюдено, то сразу закрывать модальное окно по нажатию кнопки «Отправить»?

Демо
  • Вопрос задан
  • 232 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
data: () => ({
  contact: '',
}),
methods: {
  onClick() {
    if (this.contact) {
      this.$emit('close');
    }
  },
},

<input v-model="contact">

<button @click="onClick">
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Очевидно. Повесить на это событие функцию, которая будет проверять условие и вызывать emit только при его выполнении.
Ответ написан
@frankieksai
Для инпута ставите required, с кнопки сабмит переносите $emit в @onsubmit формы.
Ответ написан
Ваш ответ на вопрос

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

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