美文网首页
ng-alain 表格海量数据虚拟滚动

ng-alain 表格海量数据虚拟滚动

作者: 成长开发者 | 来源:发表于2021-07-17 17:51 被阅读0次

背景说明:在表格里增加车辆的历史轨迹,数据通常很多,多是上千条以上。如果不使用虚拟加载,表格会异常卡顿。

  1. 先上代码
<st #st class="history"
                  [data]="deviceHistoryData" [columns]="deviceHistoryCol" 
                  [page]="{show: false, front: false}" [rowClassName]="setHistoryRowClass"
                  (change)="historyChange($event)" [scroll]="{ y: '205px', x: '240px' }"
                  [widthMode]="{ type: 'strict', strictBehavior: 'wrap' }" virtualScroll [virtualItemSize]="32"
                  [virtualMaxBufferPx]="205">
  1. 虚拟滚动设定的时候,需要同时指定 virtualItemSize virtualMaxBufferPx。并且 virtualMaxBufferPx的大小要与 scroll 设定的 y 一样。不然表格会出现空白行情况。

  2. virtualMaxBufferPx 的意思是一次渲染的最高像素。如果比 y 值小,就会出现上一步说的问题。


对 ng-alain 文档的吐槽:

文档是做了虚拟滚动的示例。那是完全在合法高度的情况,采用默认设置就可以完美展示的。实际上关于虚拟滚动的设定,应该是搭配使用。并且对虚拟属性的解释,不明不白。还不如找到 cdk scrolling 直接用机器翻译给的解释好用。

相关文章

网友评论

      本文标题:ng-alain 表格海量数据虚拟滚动

      本文链接:https://www.haomeiwen.com/subject/wxbwpltx.html