我使用UI5版本1.28在网关上部署,我的模型在控制器中定义,并且能够从json获取表中的记录。我试图获取负载表中显示的记录数。我可以通过sap.ui.getCore()。byId(" oTable")点击按钮来做到这一点.getModel(" MyJsonData")。oData.length
但是我希望在没有操作且仅在加载时获得此功能。尝试在init的控制器上调用它,但它不起作用并返回undefined。
尝试了以下几个其他选项
sap.ui.getCore()。getModel(" MyJsonData")。oData.lengthvia = undefined。
sap.ui.getCore()。byId(" oTable")。getRows()。length - 不起作用。
_getRowCount() - 无法正常工作
oTable.getBinding()。getLength() - 不起作用
还有别的尝试吗?
我的代码如下: 在视图中:
var oTable = new sap.ui.table.Table("oTable",{
selectionMode : sap.ui.table.SelectionMode.Single,
selectionBehavior : sap.ui.table.SelectionBehavior.Row,
visibleRowCount : 7,
firstVisibleRow : 3,
rowSelectionChange:oController.formatTable,
fixedColumnCount : 2
});
oTable.bindRows("MyJsonData>/");
Inside Component.js
var oModel = new sap.ui.model.json.JSONModel("model/data.json");
this.setModel(oModel, "MyJsonData");
答案 0 :(得分:1)
请尝试在视图的控制器中使用
...
onAfterRendering: function() {
console.log(this.byId("oTable").getRows().length);
},
...