最近遇到select数据量过大,导致select的option显示、下拉选择都非常卡顿,为了解决这个问题,就让数据初始显示100条,加了下拉加载的功能。
还要option的label内容过长,下拉框显示不完这个问题,需要使用nzCustomContent属性使option显示的内容是option标签中间定义的内容。
一、解决select数据量过大造成的卡顿
html代码:
<nz-select
style="width: 200px;"
[(ngModel)]="modal"
(nzScrollToBottom)="loadMore()"
nzPlaceHolder="请选择"
nzAllowClear
(ngModelChange)="modelChange($event)"
>
<nz-option *ngFor="let option of optionList" [nzValue]="option.value"[nzLabel]="option.label"></nz-option>
</nz-select>
ts代码:
optionListAll = []; // 定义从后台获取的select的option数据集合
optionList = []; // 定义显示的select的option数据集合
optionScrollPage = 1; // 全局变量定义option滚动的页数
optionScrollSize = 20; // 全局变量定义option每页条数
// 初始化时从后台获取
ngOnInit() {
this.initOption();
}
initOption(){
// ....省略获取 .....
this.optionListAll = data.data; //后台返回数据赋值给定义的变量
this.optionScrollPage = 1;
this.optionList = this.optionListAll

本文针对Angular应用中Ant Design的Select组件在数据量过大时出现卡顿的问题,提出了解决方案,包括初始显示部分数据并实现下拉加载。同时,对于option内容过长无法完全显示的情况,利用nzCustomContent属性自定义显示内容,确保完整展示。

589

被折叠的 条评论
为什么被折叠?



