SAPUI5:当元素显示来自Odata的数据时,如何触发事件?
我想在元素完全显示来自odata服务的绑定数据时触发一个事件 哪一个项目适合这样做 请注意,加载odata时可能需要几秒钟才能显示元素内部的数据SAPUI5:当元素显示来自Odata的数据时,如何触发事件?,sapui5,Sapui5,我想在元素完全显示来自odata服务的绑定数据时触发一个事件 哪一个项目适合这样做 请注意,加载odata时可能需要几秒钟才能显示元素内部的数据 var oObjectListItem = new sap.m.ObjectListItem(); var aItems = [ "title", "number", "numberUnit",
var oObjectListItem = new sap.m.ObjectListItem();
var aItems = [
"title",
"number",
"numberUnit",
"intro",
"icon",
"activeIcon",
"iconDensityAware",
"markFavorite",
"markFlagged",
"showMarkers",
"numberState",
"titleTextDirection",
"introTextDirection",
"numberTextDirection",
"markLocked",
"type",
"visible",
"unread",
"selected",
"counter"
];
for (var k = 0; k < aItems.length; k++) {
if (typeof this._aTabs[i].oTabHeaderBindingInfos[aItems[k]] === "object" && this._aTabs[i].oTabHeaderBindingInfos[aItems[k]]) {
oObjectListItem.bindProperty(aItems[k], this._aTabs[i].oTabHeaderBindingInfos[aItems[k]]);
} else if (this._aTabs[i].oTabHeaderBindingInfos[aItems[k]]) {
oObjectListItem.setProperty(aItems[k], this._aTabs[i].oTabHeaderBindingInfos[aItems[k]]);
}
}
正如在聊天中讨论的:
我们将编写自己的onAfterRendering方法:
oControl.addEventDelegate({
"onAfterRendering": function(){
console.log('called');
// Custom Logic
}
})
oControl是您的ObjectListItem
注意:它将调用两次。第一次没有数据,第二次绑定完成
让我知道这是否有效您可以尝试使用attachDataReceived绑定事件吗?我想使用ObjectListItem,但它没有该事件。attachDataReceived事件将应用于绑定。这意味着,如果您使用的是列表,则需要执行以下操作:lis.getBinding'items'。AttachDataReceivedFunction{//do something};如果你能粘贴你的代码,这样我们就能理解你想要达到的目的,这将非常有用。@RahulBhardwaj我在代码中添加了一些部分。我不使用列表。它是单个元素,其编号和标题是有界的。实际上,if的第一部分是运行的。