sapui5中如何绑定动态数据到table?
How to bind dynamic data to a table in sapui5?
我正在尝试将动态数据绑定到在 xml 中创建的 table。但是我做不到。我没有收到任何错误,但它总是显示 "No Data Available"。这是我尝试过的。
App.view.xml :-
<sap.ui.layout:HorizontalLayout xmlns:sap.ui.layout="sap.ui.layout" id="table_layt">
<sap.ui.layout:content>
<Table noDataText="No Data Available" id="bud_table" class="table_layt">
<items></items>
<columns>
<Column id="c1">
<header><Label text="Account Description" id="aclab"/></header>
</Column>
<Column id="c2">
<header><Label text="Actual" id="actlab"/></header>
</Column>
<Column id="c3">
<header><Label text="Budget" id="budglab"/></header>
</Column>
<Column id="c4">
<header>
<Label text="Variance" id="valab"/></header>
</Column>
</columns>
</Table>
</sap.ui.layout:content>
App.controller.js :-
var oTable = this.getView().byId("bud_table");
var oTemplate = new sap.m.ColumnListItem({
cells:[
new sap.m.Label({
text:"{AccountDesc}"
}),
new sap.m.Text({
text:"{AmtActFore}"
}),
new sap.m.Text({
text:"{AmtBudget}"
}),
new sap.m.Text({
text:"{AmtVariance}"
})
]
});
oTable.bindItems("/root", oTemplate);
我的数据是这样的:-
数据
对象{root:数组[64]}
root: Array[64]
0: Object
AccountDesc: "blah"
AccountNo: "blah"
AmtActFore: "blah"
AmtBudget: "blah"
AmtVariance: "blah"
我认为您遗漏了将数据推入模型的部分:
this.getView().setModel(
new sap.ui.model.json.JSONModel({
root: [{
AccountDesc: "blah",
AccountNo: "blah",
AmtActFore: "blah",
AmtBudget: "blah",
AmtVariance: "blah"
}]
}));
请参阅 this JSBin 以获取代码的工作示例,包括模型初始化部分。
我正在尝试将动态数据绑定到在 xml 中创建的 table。但是我做不到。我没有收到任何错误,但它总是显示 "No Data Available"。这是我尝试过的。
App.view.xml :-
<sap.ui.layout:HorizontalLayout xmlns:sap.ui.layout="sap.ui.layout" id="table_layt">
<sap.ui.layout:content>
<Table noDataText="No Data Available" id="bud_table" class="table_layt">
<items></items>
<columns>
<Column id="c1">
<header><Label text="Account Description" id="aclab"/></header>
</Column>
<Column id="c2">
<header><Label text="Actual" id="actlab"/></header>
</Column>
<Column id="c3">
<header><Label text="Budget" id="budglab"/></header>
</Column>
<Column id="c4">
<header>
<Label text="Variance" id="valab"/></header>
</Column>
</columns>
</Table>
</sap.ui.layout:content>
App.controller.js :-
var oTable = this.getView().byId("bud_table");
var oTemplate = new sap.m.ColumnListItem({
cells:[
new sap.m.Label({
text:"{AccountDesc}"
}),
new sap.m.Text({
text:"{AmtActFore}"
}),
new sap.m.Text({
text:"{AmtBudget}"
}),
new sap.m.Text({
text:"{AmtVariance}"
})
]
});
oTable.bindItems("/root", oTemplate);
我的数据是这样的:-
数据
对象{root:数组[64]}
root: Array[64]
0: Object
AccountDesc: "blah"
AccountNo: "blah"
AmtActFore: "blah"
AmtBudget: "blah"
AmtVariance: "blah"
我认为您遗漏了将数据推入模型的部分:
this.getView().setModel(
new sap.ui.model.json.JSONModel({
root: [{
AccountDesc: "blah",
AccountNo: "blah",
AmtActFore: "blah",
AmtBudget: "blah",
AmtVariance: "blah"
}]
}));
请参阅 this JSBin 以获取代码的工作示例,包括模型初始化部分。