antd里Table表格怎么给名称排序

官方文档说对某一列数据进行排序,通过指定列的 sorter 函数即可启动排序按钮。sorter: function(a, b) { ... }, a、b 为比较的两个列数据。如果是数字可以这样排序,如果按字母>数字>汉字的方式排序,改怎么写呢

//按数字大小排
sorter: (a, b) => a.type - b.type,
//按length排序
sorter: (a, b) => a.name.length - b.name.length,
阅读 11.9k
1 个回答

多条件排序?

(a, b) => {
    // 数字
    if (a.type > b.type) return -1;
    if (a.type < b.type) return 1;
    
    // 字母
    if (a.name.length > b.name.length) return -1;
    if (a.name.length < b.name.length) return 1;
    
    // 汉字 - 或者其他情况
    return b.xxx - a.xxx;
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题