невозможно получить доступ к событию keyCode / key для события ввода - PullRequest
0 голосов
/ 13 февраля 2019

Я пытаюсь записать в журнал ключ события на входном событии с привязкой к входу, вот что я пробовал

<div id="app">
    <input @input="onInput" @keyup="onKeyUp" type="text">
</div>

vue script

new Vue({
    el : '#app',
    methods : {
        onInput(event){
            console.log(event.key); // returns undefined ?
            console.log(event.keyCode); // returns undefined ?
        }
        onKeyUp(event){
            console.log(event.key); // returns the key name
            console.log(event.keyCode); // returns the keycode ?
        }
    }
});

, ноон дает мне undefined, но при использовании keyup он дает мне имя ключа и код ключа, как я и ожидал, только в методе onInput дает мне undefined.Любая помощь, идеи?

Ответы [ 2 ]

0 голосов
/ 13 февраля 2019

В событии input нет ни свойств key, ни keyCode.Если вы хотите прослушивать определенные события клавиатуры, используйте выделенных слушателей.

input предназначен для получения всех событий, изменяющих значения элементов формы под одним зонтиком, чтобы обеспечить средства обнаружения незначительных изменений, таких как те, которыевыполняются при перетаскивании ползунка без его отпускания или при многократном изменении значения, когда вы удерживаете стрелку вверх / вниз на входе type="number".

Наилучшим совпадением является свойство event.data (или вы можете получить определенные свойства event.target).Но на самом деле, если вы хотите обнаружить нажатие определенного key, используйте keydown .

Текущая официальная рекомендация для Ввод событие.

0 голосов
/ 13 февраля 2019

возможно, именно здесь вы можете найти ответ, звучит для меня так, как должно быть https://forum.vuejs.org/t/get-value-from-input/15854

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...