Vue.js multiselect - не работают такие события клавиатуры, как «Ctrl + Enter» - PullRequest
0 голосов
/ 09 мая 2019

Я использую эту библиотеку https://vue -multiselect.js.org / и пытаюсь добавить пользовательский обработчик событий для ctrl + enter.Я перепробовал все события, например, keyup, keydown, нажатие клавиш и, например, ctrl, enter, ctrl.enter и т. Д., Например:

@keyup.ctrl.enter="selectItemKeyboard"
@keydown.ctrl.enter="selectItemKeyboard()"
@keypress.ctrl.enter="selectItemKeyboard($event)"
v-on:keyup.ctrl.enter="selectItemKeyboard"
v-on:keydown.ctrl.enter="selectItemKeyboard($event)"
v-on:keypress.ctrl.enter="selectItemKeyboard()"

Фактический код:

<multiselect
    v-model="searchItem"
    label="name"
    track-by="title"
    placeholder="Find something…"
    open-direction="bottom"
    name="search"
    ref="search"
    :options="searchResults"
    :searchable="true"
    :internal-search="false"
    :clear-on-select="false"
    :max-height="600"
    :preserveSearch="true"
    :show-no-results="false"
    :show-no-options="false"
    :loading="isLoading"
    @search-change="search"
    @select="selectItem"
    @keyup.ctrl.enter="selectItemKeyboard"
>

selectItemKeyboard(item: any) {
    console.log(item)
}

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

...