Открыть выберите из TS (угловой, нг-выберите) - PullRequest
1 голос
/ 19 апреля 2019

У меня есть несколько ng-select на странице, и я пытаюсь открыть один из них.

Я могу сфокусироваться на правом ng-select, используя следующее:

@ViewChildren(NgSelectComponent) ngselect: QueryList<NgSelectComponent>;
this.ngselect.last.filterInput.nativeElement.focus()

Однако я не могу открыть.Я попробовал следующее

this.ngselect.last.filterInput.nativeElement.open() 

, но получил ошибку:

_this.ngselect.last.filterInput.nativeElement.open is not a function

.open () - это метод, хотя ... как я могу заставить это работать?https://github.com/ng-select/ng-select#methods

Ответы [ 2 ]

1 голос
/ 19 апреля 2019

Вы пробовали что-то подобное

<ng-select #Selecter ></ng-select>

@ViewChild('Selecter') ngselect: NgSelectComponent;

ngAfterViewInit() {
  this.ngselect.open();
}

Рабочий пример Ссылки на stackblitz

0 голосов
/ 19 апреля 2019

Существует гораздо более простой способ достичь того, что вы хотите.Если вы проверите документацию (см. Здесь: https://github.com/ng-select/ng-select#api),, вы обнаружите, что можете передать isOpen в ng-select. Изменения значения isOpen, переданного вправо ng-select откроют и закроют егоавтоматически.

Пример:

<ng-select
  [isOpen]="isOpen"
  [items]="items"
>
</ng-select>

и в классе компонентов вы можете просто изменить isOpen, и это откроет и закроет выбор.

...