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 相关文章推荐
JS类定义原型方法的两种实现的区别评论很多
Sep 12 Javascript
在Javascript里访问SharePoint列表数据的实现方法
May 22 Javascript
使用 JScript 创建 .exe 或 .dll 文件的方法
Jul 13 Javascript
JQuery入门——移除绑定事件unbind方法概述及应用
Feb 05 Javascript
理解javascript回调函数
Dec 28 Javascript
为JS扩展Array.prototype.indexOf引发的问题及解决办法
Jan 21 Javascript
Javascript中实现trim()函数的两种方法
Feb 04 Javascript
详解JavaScript异步编程中jQuery的promise对象的作用
May 03 Javascript
解析jquery easyui tree异步加载子节点问题
Mar 08 Javascript
关于layui的下拉搜索框异步加载数据的解决方法
Sep 28 Javascript
小程序实现上传视频功能
Aug 18 Javascript
vue render函数动态加载img的src路径操作
Oct 26 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
农民C键的运用技巧
2020/03/04 星际争霸
php的正则处理函数总结分析
2008/06/20 PHP
php adodb操作mysql数据库
2009/03/19 PHP
关于php fread()使用技巧
2010/01/22 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
2017/04/19 PHP
laravel Validator ajax返回错误信息的方法
2019/09/29 PHP
JavaScript类属性的访问方式详解
2014/02/11 Javascript
js实现使用鼠标拖拽切换图片的方法
2015/05/04 Javascript
jquery 实现滚动条下拉时无限加载的简单实例
2016/06/01 Javascript
javascript简易画板开发
2020/04/12 Javascript
Bootstrap按钮功能之查询按钮和重置按钮
2016/10/26 Javascript
微信小程序中子页面向父页面传值实例详解
2017/03/20 Javascript
NodeJs模拟登陆正方教务
2017/04/28 NodeJs
jQuery实现的文字逐行向上间歇滚动效果示例
2017/09/06 jQuery
Vue修改mint-ui默认样式的方法
2018/02/03 Javascript
基于 D3.js 绘制动态进度条的实例详解
2018/02/26 Javascript
在vue中读取本地Json文件的方法
2018/09/06 Javascript
怎样使你的 JavaScript 代码简单易读(推荐)
2019/04/16 Javascript
vue+vant实现商品列表批量倒计时功能
2020/01/13 Javascript
Python不规范的日期字符串处理类
2014/06/10 Python
Python实现的检测网站挂马程序
2014/11/30 Python
探究Python多进程编程下线程之间变量的共享问题
2015/05/05 Python
python实现的DES加密算法和3DES加密算法实例
2015/06/03 Python
Python网络爬虫实例讲解
2016/04/28 Python
Pandas之ReIndex重新索引的实现
2019/06/25 Python
python之PyQt按钮右键菜单功能的实现代码
2019/08/17 Python
tensorflow ckpt模型和pb模型获取节点名称,及ckpt转pb模型实例
2020/01/21 Python
CSS3实现线性渐变用法示例代码详解
2020/08/07 HTML / CSS
谷歌浏览器小字体处理方案即12px以下字体
2013/12/17 HTML / CSS
《要下雨了》教学反思
2014/02/17 职场文书
护士长竞聘书
2014/03/31 职场文书
校运动会广播稿300字
2014/10/07 职场文书
学校运动会通讯稿
2015/07/18 职场文书
创业计划书之校园跑腿公司
2019/09/24 职场文书
Logback 使用TurboFilter实现日志级别等内容的动态修改操作
2021/08/30 Java/Android
python计算列表元素与乘积详情
2022/08/05 Python