Vue实现简单的动态表头
关键代码:放入你项目中合适的位置
<el-popover ref="checkPop" placement="bottom" width="200" trigger="click">
<el-checkbox-group v-model="colCheckList">
<el-checkbox
:label="item.value"
v-for="item in colList"
:disabled="item.disabled"
:key="item.value"
class="checkbox"
>
{{ item.name }}
</el-checkbox>
</el-checkbox-group>
<el-button content="查询字段筛选" effect="" slot="reference">
<div class="el-icon-setting"></div>
</el-button>
</el-popover>
需要操作的字段
// 所有表格列
colList: [
{ name: '在运台区总数', value: 'runDistCnt', disabled: false },
{ name: '可算台区总数', value: 'calcDistCnt', disabled: false },
{ name: '系统可算率', value: 'sysCalcRate', disabled: false },
{ name: '压降法可算台区数', value: 'volCalcCnt', disabled: false },
{ name: '压降法可算率', value: 'volCalcRate', disabled: false },
{ name: '大数据可算台区数', value: 'bdCalcCnt', disabled: false },
{ name: '大数据可算率', value: 'bdCalcRate', disabled: false },
{ name: '不可算台区数', value: 'uncalcDistCnt', disabled: false },
{ name: '不可算率', value: 'uncalcDistRate', disabled: false }
],
// 选中表格列
colCheckList: [
'runDistCnt',
'calcDistCnt',
'sysCalcRate',
'volCalcCnt',
'volCalcRate',
'bdCalcCnt',
'bdCalcRate',
'uncalcDistCnt',
'uncalcDistRate'
],
// 默认列
defaultColCheckList: [
'runDistCnt',
'calcDistCnt',
'sysCalcRate',
'volCalcCnt',
'volCalcRate',
'bdCalcCnt',
'bdCalcRate',
'uncalcDistCnt',
'uncalcDistRate'
],
在所有需要操作的字段上,加入v-if判断
<el-table-column prop="sysCalcRate" label="系统可算率" :align="tableAlign" :key="5"
v-if="checkStatus('sysCalcRate')">
</el-table-column>
判断方法:
checkStatus(el) {
return this.colCheckList.includes(el)
},
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!