2017-05-23 3 views
4

クライアントのリストを表示するビューを作成しようとしていますが、Ionicのhtmlタイプとオブジェクトのために問題に遭遇しています。Ionic 2:オブジェクトリストをループする

は、ここに私のオブジェクトです:

x = { Consultation: [{name: "Joe Smith}, {name: "Jane Doe"}], 
    Re-evaluation: [{name: "Joe Smith2}, {name: "Jane Doe2"}], 
    Meeting: [{name: "Joe Smith3}, {name: "Jane Doe3"}], 
    Testing: [{name: "Joe Smith4}, {name: "Jane Doe4"}] 
} 

と私はappointment_typesとしてObject.keys(x)別名["Consultation", "Re-evaluation", "Meeting", "Testing"]を定義します。私の見解では

<ion-list> 
    <ion-list-header *ngFor="let type of appointment_types">{{ type }}</ion-list-header> 

    <!-- type is no longer defined after ion-list-header closes --> 
    <ion-item-sliding class="shaded-slider" *ngFor="let client of appointment_types[type]"> 
    <ion-item>{{ client.name }}</ion-item> 
    </ion-item-sliding> 
</ion-list> 

は私がappointment_typesループ内で滞在して行うことができるものはありますか?

<ion-list *ngFor="let type of appointment_types"> 

を、あなたがtypeし、元のオブジェクトxを持っているときに、あなたのような内側の配列でxオブジェクトを反復処理することができます。

+0

だ、あなたは 'イオンlist'に最初の' * ngFor'を置く必要があります。 – developer033

+0

ngForでdivを追加してみてください。 like

答えて

4

あなたはion-listタイプのあなたの反復を持つことによってこの問題を解決することができます:

<ion-item-sliding class="shaded-slider" *ngFor="let client of x[type]"> 

したがって、完全なテンプレートは次のようになります。

<ion-list *ngFor="let type of appointment_types"> 
    <ion-list-header >{{ type }}</ion-list-header> 
    <ion-item-sliding class="shaded-slider" *ngFor="let client of x[type]"> 
    <ion-item>{{ client.name }}</ion-item> 
    </ion-item-sliding> 
</ion-list> 

ここでは、 `<イオンアイテムsliding`に` type`が*オブジェクト*にアクセスするためIinはPLUNKER

+0

私はそのことを考えていましたが、彼らの ''要素があらかじめ決められたCSSを持っていることを知っていて、実際に各繰り返しでリストを再作成したいのかどうかはわかりませんでした。 –

+0

あなたのコメントしかし、それは非常にうまくいくかもしれません。私はここで以外はイオンを使用していません:)しかし、どういうわけかこれを別に構築したい場合は、 ' Alex