Реализация @keypress в Vue - PullRequest
       10

Реализация @keypress в Vue

0 голосов
/ 17 ноября 2018

Я пытаюсь реализовать событие onkeypress в компоненте Vue.При нажатии клавиш я хочу ограничить все коды клавиш, кроме цифр.Я пытаюсь сделать следующее.

С помощью события onkeypress все работает нормально!

<input type="number" onkeypress="return (event.charCode === 0 || /\d/.test(String.fromCharCode(event.charCode)));" />

Когда я конвертирую вышеупомянутое для использования в Vue, это неРабота!!!: (

<input type="number" @keypress="restrictChars($event)" />

<script> export default { name: 'quantity-selector', methods: { restrictChars: function($event) { return ($event.charCode === 0 || /\d/.test(String.fromCharCode($event.charCode))); } }

Что мне не хватает? Я не понимаю, что происходит? Любая помощь очень ценится!

1 Ответ

0 голосов
/ 17 ноября 2018

Разобрался с проблемой.Хотя я возвращал логическое значение при чтении кодов клавиш, я не препятствовал действию нажатия по умолчанию.Метод restrictChars должен выглядеть примерно так!

restrictChars: function($event) {
    if ($event.charCode === 0 || /\d/.test(String.fromCharCode($event.charCode))) {
        return true
    } else {
        $event.preventDefault();
    }
}
...