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)。任何想法如何解决这个问题都会有很大帮助。
答案 0 :(得分:0)
请如下更改配置设置
将[settings] =“ multiSelectDropdownSettingsMemeber”更改为[settings] =“ multiSelectDropdownSettingsLevel”
将lazyLoading标志设置为true并启用enableSearchFilter this.multiSelectDropdownSettingsLevel = { singleSelection:否, 文字:“选择层次结构”, selectAllText:“全选”, unSelectAllText:“全部取消选择”, enableSearchFilter:true, 类:“ singleSelect”, lazyLoading:是的, enableSearchFilter:true };