Skip to main content

sort()

sorts data items in a component

sort(rule?: object, config?: object): void;

Parameters:

  • rule?: object - optional, an object with parameters for sorting. The object has the following attributes:
    • by?: string | number - optional, the id of a data field
    • dir?: string - optional, the direction of sorting: "asc" or "desc"
    • as?: function - optional, a function that specifies the type to sort data as
    • rule?: function - optional, a sorting rule; the function must have two parameters and return a number (-1,0,1)
  • config?: object - optional, defines the parameter of sorting. It may contain one property:
    • smartSorting?: boolean - optional, specifies whether a sorting rule should be applied each time after changing the data set

Example

grid.data.sort(
{
by: "a",
dir: "desc",
as: item => (item.toUpperCase())
},
{ smartSorting: true }
);

// cancels the applied sorting rules
grid.data.sort();

Related sample: Data. Sorting

note

Calling the method without parameters will discard all applied sorting rules.

Custom sorting

To set a custom function for sorting, you need to specify the rule attribute in a passed object. For example:

grid.data.sort({
rule: (a, b) => a.id > b.id ? 1 : (a.id < b.id ? -1 : 0)
});

Change log:

The config parameter is added in v7.0.