1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > React中控制Ant Design Table列的显示与隐藏

React中控制Ant Design Table列的显示与隐藏

时间:2023-05-11 11:30:14

相关推荐

React中控制Ant Design Table列的显示与隐藏

React中动态控制Ant Design Table列的显示与隐藏

需求:动态控制Table列的显示与隐藏,当isAge为true时,显示年龄列

方法一:

import {useMemo } from 'react'let isAge = falseconst data = [{name: '小明',sex: '男',age: '12',class: '4年级1班'}]const columns = useMemo(() => {const baseColumns = [{title: '姓名',dataIndex: 'name'},{title: '性别',dataIndex: 'sex'},{title: '班级',dataIndex: 'class'}]if (isAge) {// 在性别列后添加年龄列baseColumns.splice(2, 0, {title: '年龄',dataIndex: 'age'})}return baseColumns})<Table columns={columns} size="small" dataSource={data} />

方法二:(推荐)

let isAge = falseconst data = [{name: '小明',sex: '男',age: '12',class: '4年级1班'}]// 当isAge为false时,columns隐藏年龄列const columns = [{title: '姓名',dataIndex: 'name'},{title: '性别',dataIndex: 'sex'},isAge && {title: '年龄',dataIndex: 'age'},{title: '班级',dataIndex: 'class'}].filter(Boolean)// 当isAge为false时,columns需要去掉false项<Table columns={columns} size="small" dataSource={data} />

方法三:

let isAge = falseconst data = [{name: '小明',sex: '男',age: '12',class: '4年级1班'}]const columns = [{title: '姓名',dataIndex: 'name'},{title: '性别',dataIndex: 'sex'},{title: '年龄',dataIndex: 'age'},{title: '班级',dataIndex: 'class'}]<Table columns={//在这里做判断!isAge ? columns.filter((item) => item.dataIndex !== 'age') : columns} size="small"dataSource={data} />

效果图

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。