ng-select 的自动关闭下拉菜单问题

Dav*_*lio 3 javascript angular-ngselect angular

我正在尝试创建一个下拉菜单,当用户在其外部单击时该菜单会自动关闭。在这个菜单中我添加了一个ng-select组件,但是当我点击其中一个选项时,菜单会关闭,因为关闭时ng-select的下拉面板不在DOM内部,有什么办法可以达到我想要的?当用户选择 ng-option 时,下拉菜单不会关闭?这里有一个问题的例子: https://stackblitz.com/edit/angular-8m1ta5 ?file=src%2Fapp%2Fapp.component.ts

这是我用来跟踪用户点击的代码:

  @ViewChild('father', {static: false}) father;
  @HostListener('document:click', ['$event.target'])
  public onClick(targetElement) {
    const clickedInside = this.father.nativeElement.contains(targetElement);
    if (!clickedInside) {
      this.dropdown = false;
    }
  }
Run Code Online (Sandbox Code Playgroud)

#father识别下拉菜单的容器。

小智 5

属性[closeOnSelect]="false"应该完成这项工作。您必须将其添加到<ng-select>标签中

因此,从 stackblitz 中,代码将变为:

<ng-select placeholder="Status" [closeOnSelect]="false">
        <ng-option [value]="'0'">Option 1</ng-option>
        <ng-option [value]="'1'">Option 2</ng-option>
        <ng-option [value]="'2'">Option 3</ng-option>
</ng-select>
Run Code Online (Sandbox Code Playgroud)

在这里您可以找到文档https://github.com/ng-select/ng-select