Sapui5 实时更新项目数
我有一个要求,我需要现场更新列表项目的数量到页面的子标题。我想使用Sapui5 实时更新项目数,sapui5,Sapui5,我有一个要求,我需要现场更新列表项目的数量到页面的子标题。我想使用sap.ui.base.EventProvider、聚合绑定或表达式绑定。请带我过去,因为我以前从未用过 如果我删除了一个列表项,列表项的数量应该会实时更新。我猜“MyListModel”是您的模型名,其中有如下内容: [ {objectName: "object1"}, {objectName: "object2"}, {objectName: "object3"} ] 然后尝试: <Page title="
sap.ui.base.EventProvider
、聚合绑定或表达式绑定。请带我过去,因为我以前从未用过
如果我删除了一个列表项,列表项的数量应该会实时更新。我猜“MyListModel”是您的模型名,其中有如下内容:
[
{objectName: "object1"},
{objectName: "object2"},
{objectName: "object3"}
]
然后尝试:
<Page title="{= ${myListModel>/}.length}">
客户端型号
如果使用了客户端模型,例如JSONModel
(即假设所有数据都已在客户端可用),并且如果目标集合是数组,则简单的表达式绑定就足够了:
title="{= ${myJSONModel>/myProducts}.length}"
- 示例1(ClientModel):
- 示例2(ClientModel):
sap.m.ListBase
特别是如果启用了“增长”功能,则此事件可以方便地始终获取框架分配给事件参数total
的新计数值
[如果growing
属性设置为true
,则可以使用参数total
]
- 样本3(v2.ODataModel):
onUpdateFinished:函数(事件){
const reason=event.getParameter(“原因”);/“筛选”、“排序”、“刷新”、“增长”。。
const count=event.getParameter(“total”);//使用此$count值执行某些操作
// ...
},
控件更新和处理项目绑定后,将触发updateFinished
事件。事件参数“total”
提供根据过滤、排序等操作请求的$count
值
使用sap.ui.model.Binding中的change
事件
此事件可应用于方便使用的任何绑定,尤其是当控件不支持
updateFinished事件时
someAggregation=”{
路径:'/Products',
活动:{
更改:'.onChange'
}
}"
onChange:函数(事件){
const reason=event.getParameter(“reason”);//请参阅:sap.ui.model.ChangeReason
const count=event.getSource().getLength();
// ...
},
返回相应的(列表)绑定对象,其结果为event.getSource()
(或$count
)。我们可以通过调用$inlinecount
- 一个缺点是,中没有
原因。但是如果控件可以增长,那么它可能是从支持“增长”
事件的ListBase派生的updateFinished
$count
附加到读取方法中的路径:
myV2ODataModel.read(“/Products/$count”{
筛选器:[/*…*/],
成功:功能(数据){
const count=+data;//“+”将字符串解析为数字。
// ...
}.绑定(此),
})
小田V4
请看一下文档主题