欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

element tabel表格 数据随时变化

程序员文章站 2022-05-03 18:03:54
...

el-table 中 tableHeight 控制

<el-table v-loading="tableloading" :data="tabledatas" :height="tableHeight" style="width: 100%">

 import { mapGetters } from 'vuex'

computed: {
    ...mapGetters(
       ['tableHeight']
    )
  },
  
  • 在vuex --store / modules/ app.js 中定义
const state = {
  // 被用到了navbar中
  sidebar: {
    opened: Cookies.get('sidebarStatus') ? !!+Cookies.get('sidebarStatus') : true,
    withoutAnimation: true // 没有动画
  },
  // 看这里
  tableHeight: window.innerHeight - 350 // 监听高度      /// 控制高度
}

const mutations = {
  // 是否折叠的状态
  TOGGLE_SIDEBAR: state => {
    state.sidebar.opened = !state.sidebar.opened
    state.sidebar.withoutAnimation = false
    if (state.sidebar.opened) {
      Cookies.set('sidebarStatus', 1)
    } else {
      Cookies.set('sidebarStatus', 0)
    }
  },
  CLOSE_SIDEBAR: (state, withoutAnimation) => {
    Cookies.set('sidebarStatus', 0)
    state.sidebar.opened = false
    state.sidebar.withoutAnimation = withoutAnimation
  },
  TOGGLE_DEVICE: (state, device) => {
    state.device = device
  },
// 看这里
  TABLE_HEIGHT: (state, val) => {   /// 控制高度
    state.tableHeight = val
  }
}
  • 在layout下AppMain.js中 监控 window.innerHeight
mounted() {
    window.addEventListener('resize', (e) => {
      this.tableHeight = window.innerHeight - 350
      store.commit('app/TABLE_HEIGHT', this.tableHeight)
    })
  }
相关标签: 前端 element