欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue實現動態(tài)控制el-table表格列的展示與隱藏

 更新時間:2022年04月12日 08:48:21   作者:zhougl996  
這篇文章主要介紹了vue實現動態(tài)控制el-table表格列的展示與隱藏,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了vue動態(tài)控制el-table表格列的展示與隱藏的具體代碼,供大家參考,具體內容如下

1.引入el-table組件,這里我直接用官網的示例代碼

<template>
? ? <div class="page">
? ? ? ? <el-popover width="60" trigger="click">
? ? ? ? ? ? <el-checkbox-group v-model="columnSelecteds">
? ? ? ? ? ? ? ? <el-checkbox v-for="item in columnHeaders" :label="item.title" :key="item.title" ></el-checkbox> ? ?
? ? ? ? ? ? </el-checkbox-group>
? ? ? ? ? ? <el-button slot="reference" icon="el-icon-more" circle style="margin-left: 100px;"></el-button>
? ? ? ? </el-popover>
? ? ? ? <el-table
? ? ? ? ? ? :data="tableData"
? ? ? ? ? ? ref="dataTable"
? ? ? ? ? ? stripe
? ? ? ? ? ? style="width: 100%">
? ? ? ? ? ? <el-table-column v-if="columnHeaders[0].isShow" prop="date" label="日期"></el-table-column>
? ? ? ? ? ? <el-table-column v-if="columnHeaders[1].isShow" prop="name" label="姓名"></el-table-column>
? ? ? ? ? ? <el-table-column v-if="columnHeaders[2].isShow" prop="address" label="地址"></el-table-column>
? ? ? ? </el-table>
? ? </div>
</template>

頁面效果圖:

2.數據綁定與監(jiān)聽

<script>
export default {
? ? name: 'ElTableTest',
? ? data() {
? ? ? ? return {
? ? ? ? ? ? // 表格數據
? ? ? ? ? ? tableData: [{
? ? ? ? ? ? ? ? date: '2016-05-02',
? ? ? ? ? ? ? ? name: '王小虎',
? ? ? ? ? ? ? ? address: '上海市普陀區(qū)金沙江路 1518 弄'
? ? ? ? ? ? }, {
? ? ? ? ? ? ? ? date: '2016-05-04',
? ? ? ? ? ? ? ? name: '王小虎',
? ? ? ? ? ? ? ? address: '上海市普陀區(qū)金沙江路 1517 弄'
? ? ? ? ? ? }, {
? ? ? ? ? ? ? ? date: '2016-05-01',
? ? ? ? ? ? ? ? name: '王小虎',
? ? ? ? ? ? ? ? address: '上海市普陀區(qū)金沙江路 1519 弄'
? ? ? ? ? ? }, {
? ? ? ? ? ? ? ? date: '2016-05-03',
? ? ? ? ? ? ? ? name: '王小虎',
? ? ? ? ? ? ? ? address: '上海市普陀區(qū)金沙江路 1516 弄'
? ? ? ? ? ? }],
? ? ? ? ? ? //表頭信息
? ? ? ? ? ? columnHeaders: [?
? ? ? ? ? ? ? ? {index: 0, title: "日期", isShow: true},
? ? ? ? ? ? ? ? {index: 1, title: "姓名", isShow: true},
? ? ? ? ? ? ? ? {index: 2, title: "地址", isShow: true}
? ? ? ? ? ? ], ?
? ? ? ? ? ? //已選擇的項
? ? ? ? ? ? columnSelecteds: ["日期","姓名", "地址"]?
? ? ? ? } ??
? ? },
? ? watch: {
? ? ? ? /**
? ? ? ? ?* @title 監(jiān)聽列顯示隱藏
? ? ? ? ?*/
? ? ? ? columnSelecteds(newArrayVal) {
? ? ? ? ? ? // 計算為被選中的列標題數組
? ? ? ? ? ? var nonSelecteds = this.columnHeaders
? ? ? ? ? ? ? ? ? ? ? ? .filter(item => newArrayVal.indexOf(item.title) == -1)?
? ? ? ? ? ? ? ? ? ? ? ? .map(item => item.title)
? ? ? ? ? ? // 根據計算結果進行表格重繪
? ? ? ? ? ? this.columnHeaders.filter(item => {
? ? ? ? ? ? ? ? let isNonSelected = nonSelecteds.indexOf(item.title) != -1
? ? ? ? ? ? ? ? if (isNonSelected) {
? ? ? ? ? ? ? ? ? ? // 隱藏未選中的列
? ? ? ? ? ? ? ? ? ? item.isShow = false
? ? ? ? ? ? ? ? ? ? this.$nextTick(() => {
? ? ? ? ? ? ? ? ? ? ? ? this.$refs.dataTable.doLayout()
? ? ? ? ? ? ? ? ? ? })
? ? ? ? ? ? ? ? } else {
? ? ? ? ? ? ? ? ? ? // 顯示已選中的列
? ? ? ? ? ? ? ? ? ? item.isShow = true
? ? ? ? ? ? ? ? ? ? this.$nextTick(() => {
? ? ? ? ? ? ? ? ? ? ? ? this.$refs.dataTable.doLayout()
? ? ? ? ? ? ? ? ? ? })
? ? ? ? ? ? ? ? }
? ? ? ? ? ? })
? ? ? ? }
? ? }
}
</script>

監(jiān)聽到已選擇和未選擇的列,調用doLayout()方法對表格進行重繪。

最終效果:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • vue如何自動化打包測試環(huán)境和正式環(huán)境的dist/test文件

    vue如何自動化打包測試環(huán)境和正式環(huán)境的dist/test文件

    這篇文章主要介紹了vue如何自動化打包測試環(huán)境和正式環(huán)境的dist/test文件,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-06-06
  • vue將秒數轉成"時分秒"格式實例代碼

    vue將秒數轉成"時分秒"格式實例代碼

    在項目中,請求后臺接口返回的值是秒,這篇文章主要給大家介紹了關于vue將秒數轉成"時分秒"格式的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-06-06
  • vue監(jiān)聽屏幕尺寸變化問題,window.onresize很簡單

    vue監(jiān)聽屏幕尺寸變化問題,window.onresize很簡單

    這篇文章主要介紹了vue監(jiān)聽屏幕尺寸變化問題,window.onresize很簡單,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • 解決使用vue-awesome-swiper組件手動滾動點擊失效問題

    解決使用vue-awesome-swiper組件手動滾動點擊失效問題

    這篇文章主要介紹了使用vue-awesome-swiper組件手動滾動點擊失效問題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • 一文詳解Vue響應式數據的原理

    一文詳解Vue響應式數據的原理

    在vue2的響應式中,存在著添加屬性、刪除屬性、以及通過下標修改數組,但頁面不會自動更新的問題,而這些問題在vue3中都得以解決,本文就給大家詳細的介紹一下Vue響應式數據原理,感興趣的小伙伴跟著小編一起來看看吧
    2023-08-08
  • vue3的動態(tài)組件是如何工作的

    vue3的動態(tài)組件是如何工作的

    這篇文章主要介紹了vue3的動態(tài)組件是如何工作的,幫助大家更好的理解和學習使用vue框架,感興趣的朋友可以了解下
    2021-03-03
  • vue實現a標簽點擊高亮方法

    vue實現a標簽點擊高亮方法

    下面小編就為大家分享一篇vue實現a標簽點擊高亮方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • Vue?打包優(yōu)化之externals抽離公共的第三方庫詳解

    Vue?打包優(yōu)化之externals抽離公共的第三方庫詳解

    這篇文章主要為大家介紹了Vue?打包優(yōu)化之externals抽離公共的第三方庫詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪<BR>
    2023-06-06
  • Vue使用echarts散點圖在區(qū)域內標點

    Vue使用echarts散點圖在區(qū)域內標點

    這篇文章主要為大家詳細介紹了Vue使用echarts散點圖在區(qū)域內標點,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • vue可滑動的tab組件使用詳解

    vue可滑動的tab組件使用詳解

    這篇文章主要為大家詳細介紹了vue可滑動的tab組件使用,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07

最新評論