Element table使用技巧详解
1、控制table某些行数不显示
下载附件的需求,有些行有附件,有些没有,所以需要过滤,重点是:Array.filter()使用
<el-card :body-style="{ padding: '20px 10px' }">
<h5>附件列表</h5>
<el-table :data="quesObj.filter(item => item.attach)">
<el-table-column label="附件名称" align="center">
<template slot-scope="scope">
<a :download="scope.row.attach" :href="'/api/hbase/readFile?fileName=' + scope.row.attach">{{scope.row.attach}}</a>
</template>
</el-table-column>
</el-table>
</el-card>
2、elementUI的table自定义合计方法
//1、table上添加summary-method自定义计算方法
<el-table
class="orderStyle"
:show-summary = "userInfo && userInfo.roleName === 'user'"
:summary-method="totalRule"
ref="order"
:data="orderData"
@selection-change="handleSelectionChange"> //2、选择的行数据
handleSelectionChange(rows){
this.orders = rows
}, //3、合计规则:注意return的是与列对应的数组
totalRule(){
let sum =
this.orders.forEach(item => {
sum += item.price
})
return ['合计','','','',sum,'']
},
3、elementUi的tabel组件如果要显示合计的话,下面的prop是必须得加的
<el-table-column label="服务价格" prop="service_price">
<template slot-scope="scope">{{scope.row.service_price}}</template>
</el-table-column>
4、elementUi的tabel组件复选框控制禁止选择
<el-table-column
type="selection"
width=""
:selectable='checkboxInit'>
</el-table-column> //methods里
checkboxInit(row,index){
if (row.withdrawState==)//这个判断根据你的情况而定
return ;//不可勾选,或者是return false/true
else
return ;//可勾选
}
5、table展开功能
<h5>远程工具列表:</h5>
<el-table ref="assistanceTool" :data="toolsOpt" row-key="name" :expand-row-keys="expands">
<el-table-column type="expand">
<template slot-scope="props">
<div class="instructions">{{ props.row.instructions }}</div>
</template>
</el-table-column>
<el-table-column prop="name" label="名称"></el-table-column>
<el-table-column prop="copyright" label="版权" width=""></el-table-column>
<el-table-column prop="version" label="版本" width=""></el-table-column>
<el-table-column prop="downurl" label="下载链接"></el-table-column>
<el-table-column label="介绍" width="">
<template slot-scope="scope">
<el-button @click="view(scope.row)" type="text" size="small">查看</el-button>
</template>
</el-table-column>
</el-table>
//1、首先需要:row-key="name" :expand-row-keys="expands"
//2、点击查看的方法:如果expands没有就把name push进去,下面这种是一次只能展开一个,点击别的,关闭之前的
view(row){
if (this.expands.indexOf(row.name) < ) {
this.expands = []
this.expands.push(row.name);
} else {
this.expands = []
}
},
6、表格筛选功能
//1、首先需要加上下面这些,prop是必须加的,否则不生效
<el-table-column
prop="category"
label="类目"
:filters="categoryFilter"
:filter-method="filterType"
filter-placement="bottom-end">
</el-table-column> //2、定义categoryFilter数组存filter字段,然后在获取数据的时候去遍历赋值
fetchData(){
getScriptListApi().then(res => {
if(res.status === ){
this.scriptData = res.data
res.data.forEach(item => {
this.initFilter(this.typeFilter,item.type)
this.initFilter(this.categoryFilter,item.category)
})
}
})
}, //3、加上下面2个公共方法即可
initFilter(array,item){
let _obj = {
text:item,
value:item
}
if(JSON.stringify(array).indexOf(JSON.stringify(_obj)) === -){
array.push(_obj)
}
},
filterType(value,row,column){
const property = column['property'];
return row[property] === value;
},
另外还有一个 filter-change 方法(用@filter-change绑定),要在table根节点上设,而不是el-table-column节点的方法,那是个全局的方法,只要你的表头有filter变化了,就会触发
Element table使用技巧详解的更多相关文章
- 前端html、CSS快速编写代码插件-Emmet使用方法技巧详解
前端html.CSS快速编写代码插件-Emmet使用方法技巧详解 Emmet的前身是大名鼎鼎的Zen coding,如果你从事Web前端开发的话,对该插件一定不会陌生.它使用仿CSS选择器的语法来 ...
- Bootstrap Table使用方法详解
http://www.jb51.net/article/89573.htm bootstrap-table使用总结 bootstrap-table是在bootstrap-table的基础上写出来的,专 ...
- MySQL SQL查询优化技巧详解
MySQL SQL查询优化技巧详解 本文总结了30个mysql千万级大数据SQL查询优化技巧,特别适合大数据里的MYSQL使用. 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 ...
- ORACLE中RECORD、VARRAY、TABLE的使用详解(转)
原文地址:ORACLE中RECORD.VARRAY.TABLE的使用详解
- 3dmax联机分布式渲染方法技巧详解
3dmax联机分布式渲染方法技巧详解 \测试环境:win7系统 3DMAX2009 Vray2.0 .首先要保证你的两台电脑能在局域网里互相访问如图: 其他电脑上也一样都能打开对方的电脑! 步! ...
- 训练技巧详解【含有部分代码】Bag of Tricks for Image Classification with Convolutional Neural Networks
训练技巧详解[含有部分代码]Bag of Tricks for Image Classification with Convolutional Neural Networks 置顶 2018-12-1 ...
- MyEclipse使用技巧详解
MyEclipse使用技巧的掌握是和我们开发效率挂钩的,那么如何掌握MyEclipse使用技巧呢?这里向你详细介绍了几种使用技巧的操作方法. 在了解MyEclipse使用技巧之前我们来看看MyEcli ...
- ping命令技巧详解 windows下ping命令知识大全
windows ping命令对于多数电脑爱好者都不会陌生,通过ping ip可以知道网络是否畅通或者网络传输质量如何等,是网络技术人员常用的检测网络命令,多数朋友对ping命令知道的并不多,接下来本文 ...
- 常见26个jquery使用技巧详解(比如禁止右键点击、隐藏文本框文字等)
来自:http://www.xueit.com/js/show-6015-1.aspx 本文列出jquery一些应用小技巧,比如有禁止右键点击.隐藏搜索文本框文字.在新窗口中打开链接.检测浏览器. ...
随机推荐
- 图解在Eclipse中如何上传项目到svn
方法/步骤 1.在Eclipse中新建project,如下图所示: 2.右键project --> team --> share project,如下图所示: 3.选择repository ...
- 联系表单 1_copy
你的名字 (必填) [text* your-name] 你的邮箱 (必填) [email* your-email] 主题 [text your-subject] 你的留言 [textarea your ...
- POJ1222 EXTENDED LIGHTS OUT 高斯消元 XOR方程组
http://poj.org/problem?id=1222 在学校oj用搜索写了一次,这次写高斯消元,haoi现场裸xor方程消元没写出来,真实zz. #include<iostream> ...
- BZOJ 2120: 数颜色 带修改的莫队算法 树状数组套主席树
https://www.lydsy.com/JudgeOnline/problem.php?id=2120 标题里是两种不同的解法. 带修改的莫队和普通莫队比多了个修改操作,影响不大,但是注意一下细节 ...
- zoj 2587 判断最小割的唯一性
算法: 先求出残量网络,计算出从src能够到的点集A,再求出能够到dst的点集B,如果所有点都被访问到了,那么割就是唯一的,即(A,B),否则(A,V-A)和(V-B,B)都是最小割. (注意因为割的 ...
- hdu 3949 第k大异或组合
题意: 给你一些数,其中任选一些数(大于等于一个),那么他们有一个异或和. 求所有这样的异或和的第k小. 我们可以将每一位看成一维,然后就是给我们n个60维的向量,求它们线性组合后得到的向量空间中,第 ...
- Vue-router浅析(二)
一.导航守卫 经常在项目中,会对页面做一些权限控制,所以需要对路由变化做出处理,跳转或取消相应的路由. 导航:即路由发生变化.导航守卫即对路由变化做出处理.当然也分几种情况:对全局变化做处理.对&qu ...
- wikioi 1380 没有上司的舞会 树形dp
1380 没有上司的舞会 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description Ural大学有N个职员,编号为1~N.他 ...
- CI下php操作memcached 的问题
CI下php操作memcached 的时候,获取memcached里不存在的key时候,会出错,然而放在程序的最后一行就不会出错,不知何故,mark一下.
- 由ORA-28001同一时候带出ORA-28000的解决的方法
今天,在登录tomcat前台界面时发现不能登录,查看log后发现原来是ORA-28001: the password has expired的错误,这个错误是因为Oracle11G的新特性所致, Or ...