Element ui全部数据前端排序

1.首先给el-table绑定sort-change监听

<el-table ref="filterTable" :data="historyList.slice((pageNum-1)*pageSize,pageNum*pageSize)" @sort-change="sortChange">

2.给需要排序的列设置sortable属性

<el-table-column label="数据时间" prop="time" sortable='custom'></el-table-column>

3.定义触发排序方法

//排序触发事件
sortChange(column){this.pageNum = 1if(column.order === 'ascending'){this.historyList.sort(this.ascSortFun)}else if(column.order === 'descending'){this.historyList.sort(this.desSortFun)}else{//取消排序则重新获取列表,恢复默认状态。this.showHistory()}
},

column中有两个属性分别是 prop 和 order

当对多个列进行排序时需要通过判断column.prop的值来确定列。

当点击升序按钮时column.order ===“ascending”

点击降序按钮时column.order === ‘descending’

这里还用到了自定义排序方法

//升序排列方法
ascSortFun(a, b) {//这里直接return a.time-b.time即可if (a.time > b.time) return 1;if (a.time == b.time) return 0;if (a.time < b.time) return -1;
},
//降序排列方法
desSortFun(a,b){//这里直接return b.time-a.time即可if (a.time > b.time) return -1;if (a.time == b.time) return 0;if (a.time < b.time) return 1;
}

4.多列排序

注意:当多个列排序时为了方便需要先定义一个 存放column.prop的字符串值 的变量。

data() {return {historyList: [], proptype: ""};}

在排序触发事件时先判断触发排序的是哪一列

//排序触发事件
sortChange(column){this.pageNum = 1if (column.prop === "time") {this.proptype = column.prop;// 将键名prop赋值给变量proptypeif(column.order === 'ascending'){this.historyList.sort(this.ascSortFun)}else if(column.order === 'descending'){this.historyList.sort(this.desSortFun)}else{//取消排序则重新获取列表,恢复默认状态。this.showHistory()}}else if(column.prop === "id"){this.proptype = column.prop;// 将键名prop赋值给变量proptype//.....}
},

这样做的好处是在写排序方法时直接用proptype即可

//升序排列方法
ascSortFun(a, b) {return a[this.proptype] - b[this.proptype];
},
//降序排列方法
desSortFun(a,b){return b[this.proptype] - a[this.proptype];
}

Element ui全部数据前端排序相关推荐

  1. element ui 图片控件 排序_vuedraggable+element ui实现页面控件拖拽排序效果

    项目要实现一些控件的拖拽排序.从而找到了这款vuedraggable控件,供大家参考,具体内容如下 如上图要实现这些控件的拖拽排序 这是拖拽后 由于公司网络的原因,项目没有使用npm,都是使用的引入的 ...

  2. element ui 图片控件 排序_JAVA全栈面试前端基础之四 Vue+Element框架快速开发

    本文主要包括以下4个内容 什么是ElementUI Vue 中引入ElementUI Vue+elementUI构建后台管理系统 开源项目推荐 1.什么是ElementUI 官网:https://el ...

  3. Element UI 表格数据格式化

    无插槽时的数据格式化 无插槽的情况下,使用 el-table-column 的formatter属性,可以格式化指定列的值 <el-table-columnprop="address& ...

  4. element ui 图片控件 排序_Element-ui上传图片后隐藏上存控件

    在使用Element-ui el-upload组件的时候,发现我只想上存一张图片,比如头像的上存,然而上存一张后,控件还可以继续上存. 一下的方法是Element-ui上传图片后隐藏上存控件. 在el ...

  5. 基于vue(element ui) + ssm + shiro 的权限框架

    zhcc 基于vue(element ui) + ssm + shiro 的权限框架 引言 心声 现在的Java世界,各种资源很丰富,不得不说,从分布式,服务化,orm,再到前端控制,权限等等玲琅满目 ...

  6. Element UI 表格单选、多选情景

    最近在使用Element UI编写简单前端页面时会遇到需要对表格进行选择操作的场景.在网络上面查询资料时发现实现方式多的看花眼,索性自己总结一个. 话不多说,搬代码来看看- 单选: <templ ...

  7. DataGear 制作基于Vue2、Element UI前端框架的数据可视化看板

    DataGear 数据可视化看板内置了一些基本.简单的页面交互组件,当它们无法满足实际看板需求时,可以引入更流行和强大的前端框架. 本文以Vue2.Element UI前端框架为例,介绍如何制作具有更 ...

  8. 前端笔记-在Element UI中表格如何根据数据动态变化显示

    前言 实际上我需要的功能类似于前端工程中的字典.由于在前端的学习自己写代码的过程中可能不会对一个项目工程化的如此的彻底,所以这里给出了一种解决方法. 需求 对于Element UI里的表格,如果假设传 ...

  9. 《前端》Element ui 表格(Table)组件中前端实现数据分页和模糊查询--未看

    我是用的Element ui 表格(Table)组件中的例子 下面是别人自己写的方法: Element ui 表格(Table)组件中前端实现数据分页和模糊查询_明天也要努力的博客-CSDN博客  h ...

最新文章

  1. 在WPF应用程序中利用IEditableObject接口实现可撤销编辑的对象
  2. 验证证书有效期_笔试查分前,教资考试4个有效期你到底弄清楚了没?逾期不补!...
  3. mysql 5.5 5.6 主从_mysql5.6+主从集的版本号(mysql5.5主机和从机载带后,5.5在设置有一定的差距)...
  4. 手写一个二级选择框联动
  5. 18 个常犯的统计学错误,建议收藏!
  6. php-open网站还可以用,nginx+php使用open_basedir限制站点目录防止跨站
  7. A few thoughts about Open Source Software
  8. php7.0康乐安装_Windows服务器安装配置PHP7.0环境图文教程
  9. rand()与srand()函数用法详解
  10. php mysql完整_BBS(php mysql)完整版(七)
  11. 【Linux下载安装jdk8】
  12. 麦迪逊大学计算机科学咋样,威斯康星大学麦迪逊分校计算机科学
  13. 推荐算法DCN(Deep Cross)自动构造高阶交叉特征原理介绍
  14. nyoj 779 兰州烧饼
  15. 对人工智能的一点看法
  16. 网络套接字------IP地址
  17. 没学过Word排版的看过来 Word排版技巧分享
  18. 雷电3菊链功能_雷电三接口小科普,看完再说你是否需要雷电三!
  19. Day 1: 音标学习
  20. 亚马逊常见的专业词汇你都知道吗?建议小白耐心看

热门文章

  1. 【如题】运行java程序提示没有为模块指定JDK
  2. SPSS——直线相关与回归
  3. php微信分享文章怎么做的,微信开发使用 JSSDK 自定义分享内容 - 文章教程
  4. php+strncmp+绕过,PHP strncmp函数
  5. BUUCTF——萌萌哒的八戒
  6. ThinkPad E430c 2G内存升级为4G【本机硬件信息备份+拆机图】
  7. 苏飞论坛 mysql_SQl使用方法总结
  8. QT + 百度智能云之人脸对比
  9. 将base64编码转换成图片
  10. 保姆级教程:js前端接入科大讯飞语音评测,实现朗读打分,vue对接科大讯飞语音评测,还可以实现句子逐词分析对错以及打分,将demo接入vue项目中