2017-03-22 1 views
0

ネストされた配列をテーブルのリストにバインドしようとしています。テーブルのリストにネストされた配列をバインドする

{ 
    "activities": [{ 
      "activityId": "1", 
      "activityName": "tennis", 
      "activityHours": [{ 
       "hour": "09:00", 
       "instructor": "dave" 
      }, { 
       "hour": "10:00", 
       "instructor": "Emma" 
      }] 
     }, { 
      "activityId": "2", 
      "activityName": "swimming", 
      "activityHours": [{ 
       "hour": "09:00", 
       "instructor": "Ella" 
      }, { 
       "hour": "10:00", 
       "instructor": "Ron" 
      }] 
     } 

    ] 

} 

私view.xmlコード:

<Table id="tblFactories" items="{path: 'data>/activities'}"> 
    <items> 
<ColumnListItem > 
<cells> 
<Text text="{data>activityName}"></Text> 
<List items="{path: 'data>/activityHours'}" > 
<StandardListItem title="{data>hour}" ></StandardListItem> 
</List> 
    </cells> 
</ColumnListItem> 
</items> 
</Table> 

が、それは動作しません。 リストバインディングの正しい構文は何ですか?

ありがとうございます!

答えて

0

XMLコードでは、パスが正しくありません。リストの場合、activityHoursは親オブジェクトのプロパティであるため、 '/'を削除する必要があります。リストのコンテキストは次のようになります。

enter image description here

<Table id="tblFactories" items="{data>/activities}"> 
    <columns> 
     <Column> 
      <Text text="Activity Name" /> 
     </Column> 
     <Column> 
      <Text text="Hours" /> 
     </Column> 
    </columns> 
     <items> 
      <ColumnListItem > 
      <cells> 
        <Text text="{data>activityName}"></Text>       
        <List items="{data>activityHours}" > 
        <StandardListItem title="{data>hour}" ></StandardListItem> 
        </List>       
      </cells> 
      </ColumnListItem> 
     </items> 
    </Table> 
関連する問題