ng-multiselect-dropdown onDeSelectAll() 不起作用

The*_*der 5 angular

我在我的角度代码中使用 ng-multiselect 下拉菜单。虽然所有 onSelect、onSelectAll、onDeSelect 方法都工作正常,但 onDeselctAll 方法不会接收取消选择的项目数组。我检查了官方网站,但没有用: https: //www.npmjs.com/package/ng-multiselect-dropdown。知道我哪里可能出错吗?PFB 代码片段:

.html 文件

<ng-multiselect-dropdown *ngIf="filteredSids.length > 0"
                                             [data]="filteredSids"
                                             [disabled]="false"
                                             [(ngModel)]="selectedSids"
                                             (onSelect)="selectedSIDs($event); onItemSelect($event)"
                                             (onSelectAll)="onSelectAll($event)"
                                             (onDeSelect)="onItemDeSelect($event)"
                                             (onDeSelectAll)="onDeSelectAll($event)"
                                             [settings]="dropdownSettings"
                                             formControlName="sidControl">
                    </ng-multiselect-dropdown>
Run Code Online (Sandbox Code Playgroud)

.ts 文件

onSelectAll(selectedSIDList: Array<string>): void {
        selectedSIDList.forEach(sid => {
            this.selectedSIDs(sid);
            this.onItemSelect(sid);
        });
    }

    onItemDeSelect(deselectedSID: any): void {
        this.selectedSIDList = this.selectedSIDList.filter(s => s != deselectedSID);

        this.selectedSIDList.forEach(sid => {
            this.onItemSelect(sid);
        });
    }

    onDeSelectAll(items: any){
        console.log(items); // items is an empty array
    }
Run Code Online (Sandbox Code Playgroud)

psc*_*ild 5

根据源代码,接收空数组是正确的行为:

this.selectedItems = [];
this.onDeSelectAll.emit(this.emittedValue(this.selectedItems));
Run Code Online (Sandbox Code Playgroud)

如果您想跟踪正在取消选择的项目,则需要找到不同的方法。