@voxman90

Каким образом обрабатывать события с клавиатуры, мыши и тачскрина?

Допустим, есть небольшая форма с полями для ввода, радио-кнопками, чекбоксами, дропдаунами и т.д.. Взаимодействовать с ней будут через клавиатуру, мышь или через тачскрин. Нужно привязать обработчики.

Как принято в среде программистов (в вашей компании, в соответствии с best practice, исходя из вашего горького опыта и т.д.) обрабатывать события с разных устройств ввода (клавиатуры ли, мыши ли, экрана мобильного устройства)?

Стоит ли делать для таких событий один обработчик, в теле которого будет проверяться тип события и предприниматься дальнейшие действия, или лучше делать для каждого типа событий свой обработчик? Для 'click' свой handleComponentClick, для 'keydown' свой handleComponentKeydown, для касания тачскрина свой и т.д.
  • Вопрос задан
  • 61 просмотр
Решения вопроса 2
bingo347
@bingo347 Куратор тега JavaScript
Crazy on performance...
С подходом "для каждого типа событий свой обработчик проще придерживаться SOLID, а общую логику можно вынести в отдельные функции
Ответ написан
Комментировать
@VitalyChaikin
Хочу сразу обратить внимание - если планируется использование клавиатуры, может потребоваться серьезное изменение структуры проекта ! Это связано с особенностями обработчика. Попробуйте реализовать на примере экрана юзера, с панелью в виде отдельного компонента, - одновременно обрабатывающих клавиатуру. В итоге - станет понятно какие ограничения накладывает обработка клавиатуры;
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы