# Удалена поддержка модификаторов keyCode
breaking
# Обзор
Вот краткое описание изменений:
- КАРДИНАЛЬНОЕ ИЗМЕНЕНИЕ: Использование чисел, т.е. keyCode, в качестве модификаторов
v-on
больше не поддерживается - КАРДИНАЛЬНОЕ ИЗМЕНЕНИЕ: опция
config.keyCodes
больше не поддерживается
# Синтаксис в 2.x
Во Vue 2 можно было указывать keyCode
для модификации метода v-on
.
<!-- версия с keyCode -->
<input v-on:keyup.13="submit" />
<!-- версия с псевдонимом -->
<input v-on:keyup.enter="submit" />
1
2
3
4
5
2
3
4
5
Кроме того, можно было определять собственные псевдонимы через глобальную опцию config.keyCodes
.
Vue.config.keyCodes = {
f1: 112
}
1
2
3
2
3
<!-- версия с keyCode -->
<input v-on:keyup.112="showHelpText" />
<!-- версия с пользовательским псевдонимом -->
<input v-on:keyup.f1="showHelpText" />
1
2
3
4
5
2
3
4
5
# Синтаксис в 3.x
Так как KeyboardEvent.keyCode
был объявлен устаревшим (opens new window) для Vue 3 больше нет смысла продолжать его поддержку. Теперь рекомендуется указывать имя в kebab-case для любой клавиши, которую требуется использовать в качестве модификатора.
<!-- Vue 3 и модификатор клавиши на v-on -->
<input v-on:keyup.delete="confirmDelete" />
1
2
2
Из этого следует, что опция config.keyCodes
теперь больше не нужна и также не будет поддерживаться.
# Стратегия миграции
Для тех кто использует keyCode
в своей кодовой базе, рекомендуется преобразовать их в именованные эквиваленты в kebab-case.