2

我已经实施了ng2 smart table grid上市

https://akveo.github.io/ng2-smart-table/#/documentation

在这里,我想整合 2 列的排序。为此,我使用了代码

 storeid: {
  title: 'Store #',
  sort: true
},

但这不是数字排序。它排序为,1,10,11...而不是特定列1,2,3... 是否有任何示例。comparefunction

请帮我。

4

1 回答 1

0

我正在使用以下函数对包含文本和数字的列进行排序:

compareFunction(direction: any, a: any, b: any) {

  let first = isNaN(Number(a)) ? a.toLowerCase() : Number(a);
  let second = isNaN(Number(b)) ? b.toLowerCase() : Number(b);

  if (first < second || (!isNaN(Number(a)) && isNaN(Number(b)))) {
    return -1 * direction;
  }
  if (first > second || (isNaN(Number(a)) && !isNaN(Number(b)))) {
    return direction;
  }


  return 0;
} 

它首先显示数字(数字排序),然后显示文本(1、2、10、a、b、c)

于 2018-01-05T07:44:10.473 回答