Отличия Angular CDK ListKeyManager

#angular #angular-material #material-design #accessibility #angular-cdk

#angular #angular-материал #материал-дизайн #Специальные возможности #angular-cdk

Вопрос:

В документации Angular CDK a11y упоминается два типа ListKeyManager :

Существует две разновидности ListKeyManager: FocusKeyManager и ActiveDescendantKeyManager.

FocusKeyManager

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

ActiveDescendantKeyManager

Используется, когда опции будут помечены как активные через aria-activedescendant. Каждый управляемый элемент должен реализовывать выделяемый интерфейс:

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

Ответ №1:

После внедрения ActiveDescendantKeyManager я заметил, что он делает очень мало, поэтому я не использовал ни один из них, но написал свою собственную логику для обработки ключей / списков.