#javascript #input #vuejs2
Вопрос:
В моем DOM у меня есть область ввода, введите ее с некоторым текстом, чтобы вставить тег
<ввод @keyup.delete=»inputBackspace()» @keyup.enter=»insert_tag()»>
и вот мои методы
insert_tag() {
let value = this.tagInput
this.tags.push(value)
this.tagInput = ''
},
inputBackspace() {
if (this.tagInput === '') this.tags.splice(-1, 1)
}
Но приведенный выше метод-это не тот результат, который я хочу, он запускает функцию сращивания, когда тег мгновенно пустеет, введя backspace.
Я предпочитаю сначала ввести backspace, чтобы входное значение стало пустым, а затем снова ввести backspace, чтобы запустить функцию соединения.
Ответ №1:
Измените свой обработчик событий с keyup на keydown, вот так @keydown.delete = "inputBackspace ()"
Вот моя песочница для этого примера https://codesandbox.io/s/kind-merkle-nhtl8?file=/src/App.vue