如何以编程方式获取Devextreme datagrid中的当前排序列?

问题描述

我在Angular 4项目中使用devextreme datagrid 17.1.1版本。 我想在typeScript中获得当前的排序列,但是datagrid的实例没有排序字段。 如何获得当前的排序列?谢谢

解决方法

尝试阅读列的sortIndex。根据要排序的列数,它将为0或1。如果一次只对一列进行排序,则可以执行以下操作:

@ViewChild(DxDataGridComponent,{ static: false }) dataGrid: DxDataGridComponent;

getSortedColumn() {
  const instance = this.dataGrid.instance;
  const allColumns = Array.from(Array(instance.columnCount()).keys()).map(index => instance.columnOption(index));
  return allColumns.find(col => col.sortIndex != null);
}