带有onon的延迟加载的angular2多选下拉列表(版本2.3.0)无响应

时间:2018-07-04 18:03:17

标签: angular select dropdown multi-select

app-module.ts

import { AngularMultiSelectModule } from 'angular2-multiselect-dropdown/angular2-multiselect-dropdown';

HTML

<angular2-multiselect
   #mulitSelectDropdown
   [data]="myOptions" 
   [hidden]="!searchTextHide" 
   [(ngModel)]="selectedItemsMember" 
   [settings]="multiSelectDropdownSettingsMemeber" 
   (onSelect)="onItemSelect($event)" 
   (onDeSelect)="OnItemDeSelect($event)" 
   (onSelectAll)="onSelectAll($event)" 
   (onDeSelectAll)="onDeSelectAll($event)"
   [ngClass]="{'disabled': myOptions.length === 0}"
   (onOpen)="addScrollListner(1)">
</angular2-multiselect>

ngOnInit

 this.multiSelectDropdownSettingsLevel = {
        singleSelection: false,
        text: "Select Hierarchy",
        selectAllText: 'Select All',
        unSelectAllText: 'UnSelect All',
        enableSearchFilter: true,
        classes: "singleSelect"
    };

函数调用

getProductMemeberData(levelID, searchText){
    this._productHierarchyService.getProductMember(levelID, searchText)
        .map((data: any) => data.json())
        .subscribe(
        (data: any) => { 
           this.IsFilterClearBtnDisable = false;
           data.forEach(result => {
              this.myOptions.push({
                id: result.sl,
                itemName: result.itemName
              });
           });
         },
     err => console.log(err), // error
   );
}

在这里,当我尝试选择下拉浏览器的任何项目时,其中无3000条记录的情况下将变得无响应,没有例外/错误。我正在使用CuppaLabs的angular2-multiselect-dropdown(版本2.3.0)。任何想法如何解决这个问题都会有很大帮助。

1 个答案:

答案 0 :(得分:0)

请如下更改配置设置

  1. 将[settings] =“ multiSelectDropdownSettingsMemeber”更改为[settings] =“ multiSelectDropdownSettingsLevel”

  2. 将lazyLoading标志设置为true并启用enableSearchFilter this.multiSelectDropdownSettingsLevel = {     singleSelection:否,     文字:“选择层次结构”,     selectAllText:“全选”,     unSelectAllText:“全部取消选择”,     enableSearchFilter:true,     类:“ singleSelect”,     lazyLoading:是的,     enableSearchFilter:true };