【Vue】如何写一个表格列显隐控制的组件?
需求
公司项目需要实现对表格列的显示隐藏进行配置,额外配置可自行添加,感觉这个组件挺泛用的,随便记录下。
这里只是说简单的显隐控制,复杂的只是在页面里面多写而已,核心代码是一样的。
简单的:
比较复杂的:
代码实现
表格页面.vue
selectedColumns: [
{
displayName: 'Name',
show: true,
},
{
displayName: 'Email Address',
show: true,
},
{
displayName: 'Profile Type',
show: true,
},
{
displayName: 'User Type',
show: true,
},
],
columnSetup(selectedColumns) {
this.selectedColumns = selectedColumns
},
isShowClumn(name) {
let isShow
this.selectedColumns.forEach((item) => {
if (item.displayName === name) {
isShow = item.show
}
})
return isShow
},
组件.vue
样式请自行删减,有些是无用代码。
点击查看代码
Columns
{{ item.displayName }}