我有一个选择对话框。出于性能原因,我在2000条总记录中保持了100个记录的增长率。
因此,当弹出窗口打开时,用户可以看到100条记录。我写了growingScrollToLoad
,以便当用户向下滚动时,另外100条记录被加载。
但是,这不起作用。 Popover最初只显示100条记录,即使我向下滚动它也不会加载更多数据。我不确定我做错了什么。我曾尝试使用SAPUI5 Guidelines中描述的所有标签/属性。此外,它在https://sapui5.hana.ondemand.com/#/sample/sap.m.sample.SelectDialog/preview工作
<SelectDialog confirm="handleConfirm"
growingThreshold="100"
growingScrollToLoad="true"
items="{myModel>/AllData}"
multiSelect="true"
noDataText="No data"
liveChange="handleSearchOnDialog"
title="Choose"
autoAdjustWidth="true">
<StandardListItem id="idItemA"
description="{Name}"
iconDensityAware="false"
iconInset="false"
title="title"
type="Active"/>
</SelectDialog>
请查看API:https://sapui5.hana.ondemand.com/#/api/sap.m.SelectDialog
您会注意到growingScrollToLoad
未列在sap.m.SelectDialog
的属性部分中==>您无法使用此功能
酒店growingScrollToLoad
是sap.m.ListBase
的财产。因此,如果您想使用它,您需要创建一个自定义对话框,其中包含sap.m.List
或sap.m.ListBase
的任何其他子项作为内容。
(sap.m.SelectDialog
是sap.ui.core.Control
的直接孩子 - >与sap.m.ListBase
没有直接关系)
我找到了一个不改变控制的解决方案
在XML文件中,我将growingThreshold="100" growing="true"
提供给Select对话框。在控制器文件中,对于Select对话框的onOpen
事件,我写了这段代码:
var sGrowingThreshold = this._oSelectDialog.getGrowingThreshold(); //sGrowingThreshold will be 100
if (sGrowingThreshold)
{
this._oSelectDialog.setGrowing(sGrowingThreshold);
}
每次我向下滚动直到结束时它都会工作并加载数据。