问题描述
请提出建议。表绑定不起作用。 模型数据,可能会更改:
{ "TestCloudEnvRO": [ { "pipelineName": "RP1","cycles": [ "cy1","cycle1","RP1cy2","cyc2","crCycle" ] },{ "pipelineName": "RP2","cycles": [ "BP1-c2","bp2-cy" ] },{ "pipelineName": "RPlocal","cycles": [ "cyclelocal" ] },{ "pipelineName": "rp1234","cycles": [ "cyclert" ] },{ "pipelineName": "RPTEST","cycles": [ "BPTEST1" ] },{ "pipelineName": "rp123","cycles": [ "cytr" ] } ] }
查看
<Table id="idtrlAllPipelines" alternateRowColors="true">
<columns>
<Column demandPopin="true" minScreenWidth="Tablet">
<Text text="Release Pipeline Cycles"/>
</Column>
</columns>
控制器
var oTemplate = new sap.m.ColumnListItem({ cells: [ new sap.m.Text({ text: "{getHist>pipelineName}" }) ] }); this.byId("idtrlAllPipelines").setModel(oModelEnv,"getHist");
this.byId(“ idtrlAllPipelines”)。bindAggregation(“ items”,{路径:“ getHist> / TestCloudEnvRO”,模板:oTemplate,templateShareable:true});
它不会在表中加载任何项目。 但这适用于View。我必须使用“图标”选项卡过滤器的选定键将其替换为/ TestCloudEnvRO,因此上述内容应该可以使用。请提出建议。
<Table items="{path: 'getHist>/TestCloudEnvRO'}" id="idtrlAllPipelines" alternateRowColors="true">
解决方法
对于您建议的绑定,可能需要对数据集进行一些修改才能达到要求。 PFB代码。
控制器
loadDataSet: function () {
var oMasterModel = this.getView().getModel("oMasterModel");
var oDataSet = [{
"IconTabName": "Env1","Table": [{
"name": "Person1","runs": ["10","20"]
},{
"name": "Person2","runs": ["0","2"]
}]
},{
"IconTabName": "Env2","Table": [{
"name": "Person3","runs": ["5","25"]
},{
"name": "Person4","runs": ["20","12"]
}]
}];
oMasterModel.setData({
allFilters: oDataSet
});
oMasterModel.refresh(true);
}
查看
<IconTabBar items="{oMasterModel>/allFilters}">
<items>
<IconTabFilter text="{oMasterModel>IconTabName}">
<Table items="{oMasterModel>Table}">
<columns>
<Column>
<Label text="Name"/>
</Column>
<Column >
<Label text="Runs"/>
</Column>
</columns>
<items>
<ColumnListItem>
<cells>
<Text text="{oMasterModel>name}"/>
<Select items="{oMasterModel>runs}">
<core:Item text="{oMasterModel>}"/>
</Select>
</cells>
</ColumnListItem>
</items>
</Table>
</IconTabFilter>
</items>
</IconTabBar>