关键代码:放入你项目中合适的位置
<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)
},