2016-06-12 16 views
1

Ich habe json wie folgt aus:Winkel 2 Rohr für Spurnummer

[ 
{ 
id : 4 
}, 
{ 
id : 3 
}, 
{ 
id : 2 
}, 
{ 
id : 1 
} 
] 

Ich möchte *ngFor ein Rohr erstellen, die meine Vorlage wie diese nach gerendert (Liste Von klein bis groß Laut id) erhalten erhalten

<span><span><=== id =1 
<span><span><=== id =2 
<span><span><=== id =3 
<span><span><=== id =4 

angular 2 haben PIPE für diese Arbeit? oder müssen wir ein Rohr wie dies schaffen? (HOW)

Antwort

1

Du brauchst ein einfaches Sortierrohr. Natürlich könnte man es allgemeinere machen, auch:

@Pipe({ 
    name: 'sortById', 
    pure: true 
}) 
export class IdSortPipe implements PipeTransform { 

    transform(value: Array<any>, args:any[]):any { 
     value.sort((a, b) => { 
      return a.id - b.id; 
     }); 

     return value; 
    } 
} 

in Ihrer Vorlage:

<span *ngFor="let obj of array | sortById">id = {{obj.id}}</span> 

Plunker zum Beispiel Nutzung

+0

tnxx es funktioniert :) –

+0

Könnten Sie bitte auch die Antwort akzeptieren? – rinukkusu

0

Sie sollten AngularJS 2 Dokumentation

<span *ngFor="let item of array">id = {{item.id}}</span> 

Angenommen, Ihre angegebenen Daten ist in Array Variable folgen. Und vor dem Templating sortiere dein Array so, wie du es möchtest.

+0

: |||| keine Männer, ich meine Liste Von klein bis groß Nach ID –