我在获取listItem
这是我的数据模型:
{
"Items": [
{
"ItemTypeID": "0",
"Name": "A"
},
{
"ItemTypeID": "1",
"Name": "B"
},
{
"ItemTypeID": "2",
"Name": "C"
}
]
}
我的观点:
<List id="idItemTypes" mode="SingleSelectMaster" select="handleListSelect"
items="{itemTypes>/ItemTypes}">
<items>
<StandardListItem title="{itemTypes>Name}" type="Navigation" />
</items>
</List>
我的观点运作正常,并向我展示了我模型中的所有项目。但是,如果我从列表中选择一个项目,我就无法获得绑定上下文。它一直没有定义。
我的控制器:
handleListSelect : function(oEvent) {
this._showDetail(oEvent.getParameter("listItem"));
},
_showDetail : function(oItem) {
this.getRouter().navTo("Items", {
console.log( oItem.getBindingContext() ); //undefined
ItemTypeID : oItem.getBindingContext().getProperty("ItemTypeID")
});
}
答案 0 :(得分:4)
常见错误:如果使用命名模型,请不要忘记将模型名称指定为getBindingContext
方法的参数: - )
this.getRouter().navTo("Items", {
console.log( oItem.getBindingContext("itemTypes") ); //should now hold an object
ItemTypeID : oItem.getBindingContext("itemTypes").getProperty("ItemTypeID")
});