Change the cells of a table in an interval time using OData model(使用OData模型在间隔时间内更改表的单元格)
问题描述
我有此代码,我需要我的表格显示前10名患者,并在10秒后显示下10名患者,而无需触摸任何按钮(自动)。
我正在寻找类似于此的内容:https://embed.plnkr.co/ioh85m5OtPmcvPHyl3Bg/
但使用OData模型(在我的视图和控制器上指定)。
这是我的观点:
这是我的控制器:
我搜索了一些函数,如IntervalTrigger
,但我真的不知道如何在此示例中使用它。
推荐答案
这里有一个小的示例:https://embed.plnkr.co/4zIAH7q2E0lngbyX
该示例使用了OData V4 Trippin服务,但同样适用于任何与OData V2兼容的服务(使用mockserver和real V2服务进行了测试)。我在控制器中为OData V2案例添加了注释。
示例使用列表绑定信息中的startIndex
和length
,转换为实体请求URL的$skip
和$top
系统查询。因此,请确保您的OData服务预期支持$skip
和$top
。即将这些系统查询附加到请求URL(例如https://<host>/<service>/<EntitySet>?$skip=3&$top=3
),应返回正确的实体集like this。
如我所述,列表绑定信息的其他选项可以在UI5文档中找到here。
JavaScript部件
该间隔使用LIFE(立即调用的函数表达式)与setTimeout
(而不是setInterval
)组合来实现。
setInterval
有以下缺点:
- 不会立即调用回调。您必须先等待10秒才能触发第一个回调。
- 不等待数据响应到达。这可能会导致跳过批处理或显示批处理的时间太短,因为无论服务器响应如何,延迟都会继续。
setTimeout
改为在应该请求下一批时提供更好的控件。
这篇关于使用OData模型在间隔时间内更改表的单元格的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!