Angular mat-autocomplete: установка активного элемента программно - PullRequest
2 голосов
/ 01 октября 2019

Что вы пытаетесь сделать?

Установка элемента в моей панели активным программным способом.

Что вы видите, что не соответствует вашим ожиданиям?

Использование функции автозаполнения keymanager setActiveItem фактически не обновляет визуальные элементы панели вообще. При запуске визуального обновления вручную оно работает по щелчку мыши, но не при навигации с помощью клавиатуры.

Воспроизведение

Демонстрация StackBlitz

Шаги для воспроизведения:

  1. Нажмите на вход.
  2. Нажмите на Show More.
  3. SetActiveItem выбирает элемент вуказанный индекс, но изменение выбора после этого не выполняется.
  4. Перейдите к Show More с помощью клавиатуры.
  5. Нажмите Ввод .
  6. SetActiveItem не делаетt работают вообще.

Окружающая среда

  • Угловая: 8.2.8
  • CDK / Материал: 8.2.2
  • Браузер (ы): все они
  • Операционная система (например, Windows, macOS, Ubuntu): Все они

Ищите советы о том, как заставить это работать,Мой подход неправильный или setActiveItem не работает так, как должно? В аннотациях функций он описывается следующим образом:

Устанавливает активный элемент в указанный элемент и добавляет к нему активные стили. Также удаляет активные стили из ранее активного элемента.

Звучит так, как мне нужно, но мне не удается заставить его работать.

1 Ответ

0 голосов
/ 01 октября 2019

У меня была похожая проблема. В моем случае я использовал Ag-Grid, и это остановило распространение событий навигации с помощью стрелок. Вы уверены, что ваш Mat-Autocomplete получает событие?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...