Вопрос
Как создать слушателя, который прослушивает несколько комбинаций клавиш Ctrl + [1-9], а затем передает значение нажатой комбинации клавиш методу changeRoute (pressedNumber)
?
Например,
Ctrl + 1
нажат changeRoute (pressedNumber)
отображает 1
в консоли Ctrl + 2
нажат changeRoute (pressedNumber)
в консоли отображается 2
- ... и т. д.
Код (vue.js)
Пока у меня есть это:
created () {
window.addEventListener('keydown', this.switchTab)
},
methods: {
switchTab (event) {
if (event.ctrlKey && event.keyCode === 49) {
this.changeRoute (event)
}
if (event.ctrlKey && event.keyCode === 50) {
this.changeRoute (event)
}
...
},
changeRoute (event) {
console.log(event.key)
}
}
Как мне избежать 9 if
заявлений?
ОБНОВЛЕНИЕ:
Я решил проблему следующим образом:
if ((event.key >= 1 && event.key <= 9) && event.ctrlKey == true) {
let tabPathIndex = event.key - 1
}