antd中table展开行默认展示,且不需要前边的加号操作


Posted in Javascript onNovember 02, 2020

如下所示:

antd中table展开行默认展示,且不需要前边的加号操作

前边不显示+,并且详细信息默认展开

在table中配置

<Table
 expandedRowKeys={this.store.chargeTableData.map(item => item.key)} //展开的行
 expandIconAsCell={false}
 expandIconColumnIndex={-1}
 bordered     //展示边框
 defaultExpandAllRows={true}  //初始时展开所有行
 pagination={{ pageSize: 5 }}  //分页器
 expandedRowRender={this.expandedRowRender} //额外展开的行
 columns={columns}    //数据
 dataSource={this.store.chargeTableData} //数据数组
 />

补充知识:antd Table 利用自己生成cell结合expandedRowKeys配置,实现任意cell控制展开列

因为项目需要,antd实现一个形如这样的表格

antd中table展开行默认展示,且不需要前边的加号操作

但是奈何翻了好几遍api文档并没有发现这样的东西,只好自己改造了,

首先table是这样的

<Table 
  columns={this.columns}
  dataSource={tableData} 
  bordered 
  pagination={false}
  size='small'
  expandIconAsCell={false} 
  expandIconColumnIndex={-1}
  expandedRowRender={record=>this.expandedRowTable(record)}
  expandedRowKeys={this.state.expandArray}
  />

实现了隐藏自带按钮、并确定了控制展开行的数组,

接下来就是控制数组了,

先绑定下方法

onClick={()=>this.expandTable(row)}

然后 是点击cell的方法

expandTable = row =>{
 const filtered = this.state.expandArray
 const text = this.state.expandBtnText 
 if(this.state.expandArray.includes(row.key)){
 filtered.splice(filtered.findIndex(element => element === row.key),1 );
 this.expandTdNum(parseInt(row.key,10),'reduce') 
 text[parseInt(row.key,10)-1] = '详情'
 }else{
 filtered.push(row.key)
 this.expandTdNum(parseInt(row.key,10),'add') 
 text[parseInt(row.key,10)-1] = '关闭' 
 }
 this.setState({
 expandArray:filtered,
 })

最后控制数组的方法

expandTdNum = (key,operation) =>{
 let temp = 0
 if(operation==='add'){
  temp++
 }else if(operation==='reduce'){
 temp--
 }else{
 return false
 }
 if(key>0 && key<7){
 this.setState({
  firstTdNum:this.state.firstTdNum + temp,
 })
 }else if(key>6 && key<10){
 this.setState({
  middleTdNum:this.state.middleTdNum + temp,
 })
 }else if(key>9 && key<13){
 this.setState({
  lastTdNum:this.state.lastTdNum + temp,
 })
 }
 }

以上这篇antd中table展开行默认展示,且不需要前边的加号操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery Ajax文件上传(php)
Jun 16 Javascript
用Javascript 获取页面元素的位置的代码
Sep 25 Javascript
jQuery开发者都需要知道的5个小技巧
Jan 08 Javascript
分享10篇优秀的jQuery幻灯片制作教程及应用案例
Apr 16 Javascript
jQuery.extend 函数的详细用法
Jun 27 Javascript
获取客户端电脑日期时间js代码(jquery)
Sep 12 Javascript
javascript判断移动端访问设备并解析对应CSS的方法
Feb 05 Javascript
JavaScript Window浏览器对象模型方法与属性汇总
Apr 20 Javascript
全面解析Bootstrap中transition、affix的使用方法
May 30 Javascript
JavaScript函数中关于valueOf和toString的理解
Jun 14 Javascript
微信小程序实现星级评价效果
Dec 28 Javascript
bootstrap-paginator服务器端分页使用方法详解
Feb 13 Javascript
React Ant Design树形表格的复杂增删改操作
Nov 02 #Javascript
vue缓存之keep-alive的理解和应用详解
Nov 02 #Javascript
详解vue-router的导航钩子(导航守卫)
Nov 02 #Javascript
vue+elementUI中表格高亮或字体颜色改变操作
Nov 02 #Javascript
vue element-ui中table合计指定列求和实例
Nov 02 #Javascript
vue 动态添加class,三个以上的条件做判断方式
Nov 02 #Javascript
vue 公共列表选择组件,引用Vant-UI的样式方式
Nov 02 #Javascript
You might like
十大催泪虐心动漫,你能坚持看到第几部?
2020/03/04 日漫
解析PHP SPL标准库的用法(遍历目录,查找固定条件的文件)
2013/06/18 PHP
关于PHP模板Smarty的初级使用方法以及心得分享
2013/06/21 PHP
php模板原理讲解
2013/11/13 PHP
phpphp图片采集后按原路径保存图片示例
2014/02/18 PHP
PHP 面向对象程序设计(oop)学习笔记 (五) - PHP 命名空间
2014/06/12 PHP
PHP封装分页函数实现文本分页和数字分页
2014/10/23 PHP
利用php-cli和任务计划实现刷新token功能的方法
2017/05/03 PHP
PHP pthreads v3下worker和pool的使用方法示例
2020/02/21 PHP
js创建数据共享接口——简化框架之间相互传值
2011/10/23 Javascript
javascript自定义的addClass()方法
2014/05/28 Javascript
Javascript数组与字典用法分析
2014/12/13 Javascript
javascript实现C语言经典程序题
2015/11/29 Javascript
Cropper.js 实现裁剪图片并上传(PC端)
2017/08/20 Javascript
详解微信小程序实现仿微信聊天界面(各种细节处理)
2019/02/17 Javascript
详解Vue2.5+迁移至Typescript指南
2019/08/01 Javascript
微信小程序跳转到其他网页(外部链接)的实现方法
2019/09/20 Javascript
使用Angular9和TypeScript开发RPG游戏的方法
2020/03/25 Javascript
使用konva和vue-konva库实现拖拽滑块验证功能
2020/04/27 Javascript
[47:08]OG vs INfamous 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
python使用matplotlib绘图时图例显示问题的解决
2017/04/27 Python
python爬虫爬取某站上海租房图片
2018/02/04 Python
tensorflow1.0学习之模型的保存与恢复(Saver)
2018/04/23 Python
利用Anaconda简单安装scrapy框架的方法
2018/06/13 Python
python针对不定分隔符切割提取字符串的方法
2018/10/26 Python
python的内存管理和垃圾回收机制详解
2019/05/18 Python
如何在网站上添加谷歌定位信息
2016/04/16 HTML / CSS
西班牙英格列斯百货英国官网:El Corte Inglés英国
2017/10/30 全球购物
美国电子产品主要品牌的授权在线零售商:DataVision
2019/03/23 全球购物
测量实习生自我鉴定
2013/09/19 职场文书
大门门卫岗位职责
2013/11/30 职场文书
顶碗少年教学反思
2014/02/21 职场文书
护士优质服务演讲稿
2014/08/26 职场文书
2015年度信用社工作总结
2015/05/04 职场文书
大队委员竞选演讲稿
2015/11/20 职场文书
2019同学聚会主持词
2019/05/06 职场文书