Skip to main content

sort()

sorts data items in a component

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

Parameters:

  • rule: object - an object with parameters for sorting. The object has the following attributes:
    • by: string | number - the id of a data field (a column of Grid)
    • dir: string - the direction of sorting: "asc" or "desc"
    • as: function - 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 - defines the parameter of sorting. It may contain one property:
    • smartSorting: boolean - specifies whether a sorting rule should be applied each time after changing the data set

Example

grid.data.sort({
by:"a",
dir:"desc",
as: function(item){
return 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.