gpt4 book ai didi

angular - Cdk virtual-scroll inside mat-select for mat-option

转载 作者:太空狗 更新时间:2023-10-29 17:56:13 26 4
gpt4 key购买 nike

有没有人能够在 mat-select 中使用虚拟滚动,如下所示?

<mat-form-field>
<mat-select placeholder="State">
<cdk-virtual-scroll-viewport autosize>
<mat-option *cdkVirtualFor="let state of states" [value]="state">{{state}}</mat-option>
</cdk-virtual-scroll-viewport>
</mat-select>
</mat-form-field>

如你所见https://stackblitz.com/edit/angular-h4xptu?file=app%2Fselect-reset-example.html它不起作用 - 在您滚动时会导致出现奇怪的空白区域。

最佳答案

虚拟滚动视口(viewport)需要一个大小才能知道滚动容器必须有多大。这可以通过指定 [itemSize] 来完成。 <cdk-virtual-scroll-viewport>的属性(property)及其高度。

在您的示例中,一个 <option> 的高度项目是 48px。如果您想一次显示五个项目,则容器大小为 5 * 48 = 240:

<mat-form-field>
<mat-select placeholder="State">
<cdk-virtual-scroll-viewport [itemSize]="48" [style.height.px]=5*48>
<mat-option *cdkVirtualFor="let state of states" [value]="state">
{{state}}
</mat-option>
</cdk-virtual-scroll-viewport>
</mat-select>
</mat-form-field>

关于angular - Cdk virtual-scroll inside mat-select for mat-option,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52266444/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com