与manifest.json中配置的sap.m.List和模型绑定问题

时间:2016-07-20 09:39:16

标签: json sapui5

我需要显示列表,其中的项目绑定到模型,该模型在manifest.json中为组件配置。

在manifest.json

中配置的模型
"models": {
            "i18n": {
                "type": "sap.ui.model.resource.ResourceModel",
                "settings": {
                    "bundleName": "com.xxxxx.yy.DemandFilter.i18n.i18n"
                }
            },
            "priority": {
                    "type": "sap.ui.model.json.JSONModel",
                    "uri": "model/priority.json"
            },
            "status": {
                    "type": "sap.ui.model.json.JSONModel",
                    "uri": "model/status.json"
            }  
        }

优先级和状态json只是对象数组,如下所示

{
"status":[
 {
 "name" : "Created",
 "selected":false
 },
{
 "name" : "Processed",
 "selected":false
 },
 {
 "name" : "Released",
 "selected":false
 },
 {
 "name" : "Completed",
 "selected":false
 },
 {
 "name" : "Closed",
 "selected":false
 }]
}

我将视图通过Component放置如下

new sap.ui.core.ComponentContainer({
                height : "100%",
                name : "com.xxxxx.yyy.DemandFilter"
            })

我的观点是XML视图,列表添加如下

<List headerText="{i18n>status}" items="{ path:'status>/status' }"
                selectionChange="onStatusSelection" mode="MultiSelect">
                <items>
                    <InputListItem label="{name}" selected="{selected}">
                    </InputListItem>
                </items>
            </List>

列表项的数量是正确的,但名称和所选名称没有正确绑定

enter image description here

如果我将模型设置为Controller的onInit中的视图,则此工作正常。

请建议我在哪里弄错了?

1 个答案:

答案 0 :(得分:0)

还需要使用模型的别名指定控件的属性。

<InputListItem label="{status>name}" selected="{status>selected}">