Package Exports
- ngx-orderby-ts
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (ngx-orderby-ts) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Ngx-orderby-ts
Order your collection by a single or multiple fields in .ts file. The image below shows the multiple columns sorting. First order birthday then name descending order. This library was generated with Angular CLI version 9.0.7.
Install
npm install ngx-orderby-ts --saveUsage
This component is used to sort a collection using a single column, multiple columns in ascending and descending order. For deep sorting you have to use dot to indicate the path to the property.
| Type | Description |
|---|---|
| single | sorting a collection using a single column |
| multiple | sorting a collection using a multiple columns |
The following types can be used for sorting:
string, integer, number, number in a string format, boolean, date (must be ISO_8601), object
Import OrderBy into your component (.ts)
import { OrderBy } from 'ngx-orderby-ts';Using single column soring in your component (.ts) file
const singleResult = OrderBy.sortSingle(collection, 'id');Using multiple columns soring in your component (.ts) file
const multipleResult = OrderBy.sortMultiple(collection, ['birthday', 'name']) ;Example
Using multiple columns soring in your .ts file. The result is showed in the above image.
import { Component, OnInit } from '@angular/core';
import { OrderBy } from 'ngx-orderby-ts';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.scss']
})
export class AppComponent {
constructor() {
const collection: any[] = [
{
id: 1,
info: {
name: 'Ryan',
number: '123-342',
birthday: '2007-12-09'
}
},
{
id: 4,
info: {
name: 'Justin',
number: '123-567',
birthday: '2007-12-09'
}
},
{
id: 3,
info: {
name: 'Luke',
number: '234-8765',
birthday: '2007-12-09'
}
},
{
id: 2,
info: {
name: 'Samuel',
number: '234-3241',
birthday: '2009-08-14'
}
},
{
id: 5,
info: {
name: 'Zipora',
number: '435-1234',
birthday: ''
}
}
];
const result = OrderBy.sortMultiple(collection, ['info.birthday', '-info.name']);
}
}