← All pipes
Collections

orderBy

Readonly arrays; stable ascending/default or descending sort by a direct key.

Use it in your component

Standalone component
import { Component } from '@angular/core';
import { JsonPipe } from '@angular/common';
import { OrderByPipe } from 'extra-pipe';

@Component({
  standalone: true,
  imports: [OrderByPipe, JsonPipe],
  template: `{{ items | orderBy: 'name': 'asc': 'fr' | json }}`,
})
export class ExampleComponent {
readonly items = [{name:'Sam'},{name:'Ana'}];
}

Template
{{ items | orderBy: 'name': 'asc': 'fr' | json }}

Try it live.

The output below runs the packed library. Edit data, not code.

Use double quotes for text, or a number, array, object or null.
Ordered parameters: key, direction. Locale is controlled separately.
Applied to the live output.
Live template data
readonly value = [
  {
    "name": "Sam"
  },
  {
    "name": "Ana"
  },
  {
    "name": "Ana",
    "id": 2
  }
] as const;
readonly parameter0 = "name";
readonly parameter1 = "asc";
{{ value | orderBy: parameter0: parameter1: "en-US" | json }}

Rendered output

[
  {
    "name": "Ana"
  },
  {
    "name": "Ana",
    "id": 2
  },
  {
    "name": "Sam"
  }
]