一般来说写表格列排序都是简简单单在columns里加sorter就可以
{
title: "状态",
dataIndex: "partStatus",
width: 85,
ellipsis: true,
align: 'left',
sorter: (a, b) => a.partStatus - b.partStatus,
},
但是有些字段有数据为空的时候这个东西不起作用,备份一下代码
sorter: (a, b) => this.isNumber(a.sup1DieOpeningStatus) &&
this.isNumber(b.sup1DieOpeningStatus)
? a.sup1DieOpeningStatus - b.sup1DieOpeningStatus
: this.isStr(a.sup1DieOpeningStatus).localeCompare(
this.isStr(b.sup1DieOpeningStatus)
),
意思是当都是数字的时候进行加减处理,有不是数字的东西的时候就进行后一个操作。
备份一下两个方法
isNumber(val) {
if (parseFloat(val).toString() == 'NaN') {
return false;
} else {
if (isNaN(val) && !isNaN(Date.parse(val))) {
return false;
}
return true;
}
},
isStr(val) {
if (val == null || !val) {
return '';
} else {
return val;
}
},