2016-06-14 51 views
0

的getProperty我有一個問題,得到的listItemgetBindingContext()的不確定

這裏結合上下文是我的數據模型:

{ 
    "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") 
    }); 
} 

回答

2

一個常見的錯誤:如果您使用命名模式,不要忘記爲參數指定的型號名稱爲getBindingContext方法:-)

this.getRouter().navTo("Items", { 
    console.log(oItem.getBindingContext("itemTypes")); //should now hold an object 
    ItemTypeID : oItem.getBindingContext("itemTypes").getProperty("ItemTypeID") 
}); 
+0

哎呀!非常感謝。 :-) – alexP