我正在尝试将数据从OData服务显示到我需要将一些过滤器传递给OData服务的磁贴。我使用下面的代码但是我收到错误“没有为tileContainer的bindAggregation函数指定模板或工厂函数”。
var tileContainer = new sap.m.TileContainer("tileContainer",{
height:"80%",
allowAdd : true,
editable : false
});
var templateTile = new sap.m.StandardTile("tileTemplate",{
title : 'Orders',
number:'{COUNT}',
info:'Number of Orders',
icon:"sap-icon://bar-chart",
});
oModel = sap.ui.getCore().getModel();
tileContainer.setModel(oModel);
tileContainer.bindAggregation('tiles',{path : "/OrderSet", filters: [f1, f2]}, templateTile);
new sap.m.App({
pages : new sap.m.Page({
enableScrolling : false,
title : "tile container",
content : [tileContainer]
})
}).placeAt("content");
有人可以告诉我这里我做错了什么。
答案 0 :(得分:0)
bindAggregation有两个参数; sAggregationName
和oBindingInfo
以及您的代码模板在oBindingInfo
对象之外传递,因此无法使用,这是导致错误的原因。
您也可以传递单个参数,而不是在oBindingInfo
对象中传递它们。但在这种情况下,必须保持参数序列。
使用此
更新bindAggregation方法的参数语法tileContainer.bindAggregation("tiles",{
path: "/OrderSet",
filters: [f1, f2],
template: templateTile
});