2017-07-19 3 views
0

Ich habe eine iterierende Array und ich muss basierend auf der Auswahl sortieren, ich habe die sortby mit ngModel mit Ausdruck binden, aber es scheint einige Vorlage Analysefehler, Was ist der richtige Weg, um das gleiche zu erreichen?Wie verwende ich Ausdruck in * ngfor?

app.html

<ion-item> 
    <ion-label>Sort By</ion-label> 
    <ion-select [(ngModel)]="sort"> 
    <ion-option value="name">Name</ion-option> 
    <ion-option value="stall">Stall Number</ion-option> 
    <ion-option value="plan">Plan</ion-option> 
    </ion-select> 
</ion-item> 

<ion-item item-detail *ngFor="let exhibit of exhibits | sortBy :'{{sort}}'; 
let i = index" name="exhibit"> 
    <h2>{{ exhibit.name }}</h2> 
    <h5>{{ exhibit.plan }}</h5> 
    <h5>{{ exhibit.link }}</h5> 
    <h5>{{ exhibit.stall }}</h5> 
    <h5>{{ exhibit.description }}</h5> 
</ion-item> 

Antwort

2

Sie brauchen nicht {{}} (führen zu Syntaxfehler) und '' (führen zu statischem String Art).

Wenn die Variable sort aus Komponente kommt, können Sie es direkt bei ngFor Ausdruck wie folgt:

<ion-item item-detail *ngFor="let exhibit of exhibits | sortBy:sort; let i = index" name="exhibit"> 
    ... 
</ion-item>`` 
Verwandte Themen