element ui table 表格排序
实现elementui表格的排序
1:给table加上sort-change,给table每一项加上sortable和column-key,排序是根据column-key来进行排序的
<el-table :data="leavelist"
border
v-loading="tableLoading"
@sort-change="sortChange"
style="width: 100%">
<el-table-column
prop="otname"
sortable
column-key="otname"
:label="this.getRes('MyVacation.OverTimeType')"
></el-table-column>
<el-table-column
prop="txtbegindate"
sortable
column-key="begindate"
:label="this.getRes('MyVacation.OverTimeDate')"
></el-table-column>
<el-table-column
prop="num"
sortable
column-key="num"
:label="this.getRes('MyVacation.OverTimeHours')"
>
</el-table-column>
<el-table-column
prop="txtcl"
sortable
column-key="cl"
:label="this.getRes('MyVacation.Transfer')"
>
</el-table-column>
<el-table-column
prop="clhours"
sortable
column-key="clhours"
:label="this.getRes('MyVacation.TransferTime')"
>
</el-table-column>
<el-table-column
prop="txtclexp"
sortable
column-key="clexp"
:label="this.getRes('MyVacation.ExpirationDate')"
>
</el-table-column>
<el-table-column
prop="remark"
sortable
column-key="remark"
:label="this.getRes('MyVacation.Remark')"
>
</el-table-column>
<el-table-column
prop="txtstatus"
sortable
column-key="status"
:label="this.getRes('MyVacation.Status')"
>
</el-table-column>
</el-table>
2,定义sort-change方法
sortChange(column) {
if (column.column != null) {
let orderby = column.column.columnKey;
if (column.order == 'ascending') {
this.order = orderby + ' ' + 'asc';
this.handSearch();
} else if (column.order == 'descending') {
this.order = orderby + ' ' + 'desc';
this.handSearch();
}
} else {
this.order = 'begindate asc';
this.handSearch();
}
},
3,data里定义默认排序方法传入发送请求的位置
data() {
return {
order: 'begindate asc'
}
},
4,发送请求时,传入order
handSearch() {
this.disabled = true;
this.tableLoading = true;
var me = this;
var serviceParams = {};
if (this.datarange[0] != new Date(new Date().setHours(0, 0, 0, 0) - 2592000000)) {
serviceParams.startdate = this.datarange[0];
} else {
serviceParams.startdate = new Date(new Date().setHours(0, 0, 0, 0) - 2592000000);
}
if (this.datarange[1] != new Date(new Date().setHours(0, 0, 0, 0))) {
serviceParams.enddate = this.datarange[1];
} else {
serviceParams.enddate = new Date(new Date().setHours(0, 0, 0, 0));
}
serviceParams.pageIndex = me.thisPage;
serviceParams.pageSize = me.thisPageSize;
serviceParams.orderBy = this.order;
if (this.overTimeValue) {
serviceParams.otType = this.overTimeValue;
} else {
serviceParams.otType = '';
}
if (this.statusValue) {
serviceParams.status = this.statusValue;
} else {
serviceParams.status = "";
}
var start = me.thisPage;
var limit = me.thisPageSize;
me.invokeService("OverTime", "GetMyOTInfoList", [serviceParams],
function (msg) {
this.disabled = false;
var datalist = msg.ReturnData.$.toJson();
me.total = msg.ReturnData.$.totalCount;
var language = localStorage.getItem("Language");
var arrylist = new Array();
for (var i = 0; i < datalist.length; i++) {
var item = datalist[i];
item["txtbegindate"] = "";
item["txtenddate"] = "";
item["txtunit"] = "";
item["txtattperiod"] = "";
item["txtstatus"] = "";
item["txtclexp"] = "";
item["txtcl"] = "";
if (item.status != "") {
item.txtstatus = this.getRes('MyVacation.' + item.status);
}
if (item.unit != "") {
item.txtunit = this.getRes('unit.' + item.unit);
}
if (item.begindate != "" && item.begindate != undefined) {
item.txtbegindate = item.begindate.dateFormat(me.LocalUser.DateFormat);
}
if (item.enddate != "" && item.enddate != undefined) {
item.txtenddate = item.enddate.dateFormat(me.LocalUser.DateFormat);
}
if (item.attperiod != "" && item.attperiod != undefined) {
if (item.attperiod == null) {
item.txtattperiod = "";
} else {
item.txtattperiod = item.attperiod.dateFormat(me.LocalUser.DateFormat);
}
}
if (item.clexp != "" && item.clexp != undefined) {
item.txtclexp = item.clexp.dateFormat(me.LocalUser.DateFormat);
}
if (item.cl != "" && item.cl != undefined) {
if (item.cl == '1') {
item.txtcl = '√'
} else {}
}
arrylist.push(item);
}
me.leavelist = arrylist;
this.tableLoading = false;
},
function () {
this.disabled = false;
this.tableLoading = false;
}
);
}
效果图:

element ui table 表格排序的更多相关文章
- vue + element ui table表格二次封装 常用功能
因为在做后台管理项目的时候用到了大量的表格, 且功能大多相同,因此封装了一些常用的功能, 方便多次复用. 组件封装代码: <template> <el-table :data=&qu ...
- Vue+element ui table 导出到excel
需求: Vue+element UI table下的根据搜索条件导出当前所有数据 参考: https://blog.csdn.net/u010427666/article/details/792081 ...
- element ui设置表格表头高度和每一行的高度
填坑记录:今天用element ui的表格组件做用户信息展示,直接拉取的官网的代码过来,发现表头和每一行都太高了,如下: 因为第一次使用element ui的表格组件,不太清楚会遇到这样的坑,以为能轻 ...
- Element UI table组件源码分析
本文章从如下图所示的最基本的table入手,分析table组件源代码.本人已经对table组件原来的源码进行削减,源码点击这里下载.本文只对重要的代码片段进行讲解,推荐下载代码把项目运行起来,跟着文章 ...
- VUE -- 对 Element UI table中数据进行二次处理
时间——日期 后台经常给我们返回的是 时间戳 (例如:1535620671) 这时候我们页面展现的时候需要将时间戳转换为我们要的格式 例如 (YYYY-MM-DD HH:mm:ss) 如果是在Elem ...
- element ui table render-header自定义表头信息使用
在使用vue自定义组件内容过程之中,我们绝大多数情况下都是通过预先写好不同的html模板,再通过props传入不同的值来渲染不同的模板.例如我们需要实现一个<v-title size='1'&g ...
- Element UI table参数中的selectable的使用
Element UI table参数中的selectable的使用中遇到的坑:页面: <el-table-column :selectable='selectable' type="s ...
- element ui table 导出excel表格
https://blog.csdn.net/u010427666/article/details/79208145 vue2.0 + element UI 中 el-table 数据导出Excel1. ...
- element ui table(表格)点击一行展开
element ui是一个非常不错的vue的UI框架,element对table进行了封装,简化了vue对表格的渲染. element ui表格中有一个功能是展开行,在2.0版本官网例子中,只可以点击 ...
随机推荐
- get_started_3dsctf_2016 1
拿到题目,依旧还是老样子,查看程序开启的保护和位数 可以看到程序开启了nx保护是32位程序,于是我们把程序放入ida32编译一下 一打开就能看到非常明显的get_flag这个程序,f5观察伪代码 当a ...
- HTML行内级元素之间的空格问题
HTML行内级元素之间的空格问题 1.为什么元素之间会产生空格? 在编写行内级元素(包括inline-block元素)的代码之间如果有空格(换行),在浏览器上就会显示元素之间有空格. 示例代码如下: ...
- 请注意JS方法,方法同名,参数个数不一样是不能区分方法的,
请注意JS方法,方法同名,参数个数不一样是不能区分方法的, 所以要区分方法,只能利用方法名不同来区分,而不能利用参数个数与参数类型来分.
- Java整合redis报错s if RDB snapshotting fails (stop-writes-on-bgsave-error option)
Caused by: io.lettuce.core.RedisCommandExecutionException: MISCONF Redis is configured to save RDB s ...
- 【Tools】VS搭建Qt开发环境
00. 目录 @ 目录 00. 目录 01. 概述 02. Visual Studio 2019安装 03. Qt6安装 04. qt-vsaddin插件下载 05. qt-vsaddin插件安装 0 ...
- c++内存分布之虚函数(单一继承)
系列 c++内存分布之虚函数(单一继承) [本文] c++内存分布之虚函数(多继承) 结论 1.虚函数表指针 和 虚函数表 1.1 影响虚函数表指针个数的因素只和派生类的父类个数有关.多一个父类,派生 ...
- 再谈多线程模型之生产者消费者(总结)(c++11实现)
0.关于 为缩短篇幅,本系列记录如下: 再谈多线程模型之生产者消费者(基础概念)(c++11实现) 再谈多线程模型之生产者消费者(单一生产者和单一消费者)(c++11实现) 再谈多线程模型之生产者消费 ...
- Hamburger Magi(hdu 3182)
Hamburger Magi Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)To ...
- Codeforces 777B:Game of Credit Cards(贪心)
After the fourth season Sherlock and Moriary have realized the whole foolishness of the battle betwe ...
- 涛思数据 TDengine集群搭建
一.准备 1.设置主机名 hostnamectl set-hostname a.com hostnamectl set-hostname b.com hostnamectl set-hostname ...