2 votes

Ordonner par le nom de famille dans angular2

Je veux trier la liste des contacts par son nom. NOM DE FAMILLE avec une liste de noms sous chaque Alphabet. Il peut être fait facilement dans jquery et angular-1 mais comment puis-je mettre en œuvre la logique dans Angular2/Ionic V2 ?

3voto

Alejandro Lora Points 1773

Créez un tuyau, et triez pour la valeur dont vous avez besoin.

Voir cet échantillon :

import { Pipe } from "angular2/core";
import {Todo} from './todo';

@Pipe({
  name: "sort"
})
export class TodosSortPipe {
  transform(array: Array<Todo>, args: string): Array<Todo> {
    // Do YOUR LOGIC HERE, like this code below

    array.sort((a: any, b: any) => {
      if (a < b) {
        return -1;
      } else if (a > b) {
        return 1;
      } else {
        return 0;
      }
    });
    return array;
  }
}

et ensuite l'utiliser comme :

*ngFor="let item of array | sort"

Source :

Angular 2 OrderBy Pipe

Document officiel :

https://angular.io/docs/ts/latest/guide/pipes.html

2voto

divyanshch Points 171

Vous pouvez donc le faire. Je l'ai fait dans mon application pour organiser la liste des contacts. Dans le code, "data" est la liste des contacts. Et puis "a.last_name" est la façon dont vous accédez à la catégorie du nom de famille en fonction de la façon dont vous avez configuré votre objet de liste de contacts. J'espère que cela vous aidera, cela permettra à l'objet data d'être ordonné après.

  data.sort(function (a, b) {
        return a.last_name.localeCompare(b.last_name);
    })

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X