2017-04-18 1 views
0

나는 목록에서 모든 항목을 얻기 위해 노력하고 Controller.Here 출신이 코드 (XML 뷰)SAPUI5 : (목록에서 점점) 배열에서 항목 (또는 요소)에 액세스 할 수 없습니다

onAfterRendering: function(oEvent) { 

      var items = this.getView().byId("list").getItems("listitems"); 

      console.dir(items); 




     } 
내가 콘솔에서 무엇입니까 배열을 초래한다 하나로, OData로 아래
<List id="list" 
      items="{ path: '/MYPROJECTSSet', sorter: { path: 'MpId', descending: false },groupHeaderFactory: '.createGroupHeader', parameters: { operationMode: 'Client' } }" 
      busyIndicatorDelay="{masterView>/delay}" noDataText="{masterView>/noDataText}" 
      mode="{= ${device>/system/phone} ? 'None' : 'SingleSelectMaster'}" growing="true" growingScrollToLoad="true" 
      updateFinished="onUpdateFinished" selectionChange="onSelectionChange" > 
      <infoToolbar> 
       <Toolbar active="true" id="filterBar" visible="{masterView>/isFilterBarVisible}" press="onOpenViewSettings"> 
        <Title id="filterBarLabel" text="{masterView>/filterBarLabel}"/> 
       </Toolbar> 
      </infoToolbar> 
      <items> 
       <ObjectListItem id="listitems" type="{= ${device>/system/phone} ? 'Active' : 'Inactive'}" press="onSelectionChange" title="{MpId}" intro="{Description}"> 
        <firstStatus> 
         <ObjectStatus id="icon" icon="{ parts: [ {path: 'ActualData'}, {path: 'PlannedData'} ], formatter : '.formatter.getIcon'}"/> 
        </firstStatus> 
       </ObjectListItem> 

      </items> 
     </List> 

을 목록을 채우는 곳

이 코드는 XMLview에서입니다. 색인을 사용하여이 배열의 요소에 액세스 할 수 없습니다.

목록의 모든 항목을 가져 오는 다른 방법이 있습니까? 또는 다른 방법으로 배열 요소에 액세스합니까?

console.log(items[0].mProperties); 

나 : 당신이 같은 데이터를 얻을 수 있습니다 귀하의 경우에는

Click here to see resulted array

답변

0

var aData = (oList.getItems()).map(function(oItem){   
    console.log(oItem.getBindingContext().getObject()); 
}); 

getBindingContext 방법은 모델 이름을 기대하고있다. 그렇지 않으면 기본 모델을 사용합니다. 이름이있는 OData 모델을 사용하는 경우, getBindingContext 메소드 호출로 전달되어야합니다.

Here은 간단한 데모 버튼입니다.

+0

이 @Jaro 이봐, 답장을 보내 주셔서 감사합니다 나는 첫 번째 솔루션을 시도 할 때 **을 console.log (항목 [0] .mProperties) ** 이 오류 (약속을) _Uncaught 형식 오류 다음 나에게 준 : undefined_ 의 속성 'mProperties'를 읽을 수없고 두 번째 해결 방법이 작동하지 않습니다. – Macnab

+0

onAfterRendering : function (oEvent) {to onInit : function (oEvent) {이 함수에 내 행을 입력하십시오. – Jaro