关于vue使用elementui的table固定表头后导则的高度留白问题

问题分析

   个人分析应该是数据问题

   在elementui使用table表格的height过程中,height设置了一个固定的高,如果当数据量足够时(超出这个给定的固定高度),能够正常的出现滚动条没问题,但是当数据量过少时(渲染出来的列表没撑满这个给定的高度),会导则高度有一部分的留白

话不多说,上操作

解决步骤

1、首先是最重要的高度留白问题

既然固定高度不行,那就设置成最大高度,这样数据量少的时候就不会出现高度空白问题

将 :height 改成 :max-height

1)html部分:

   注:tableHeight在下文data中声明

<el-table :max-height="tableHeight"  :data="tableData">

2、动态最大高度的计算

1)、data部分:

data(){
  return:{
          
        tableHeight: window.innerHeight - 300, //表格动态高度,300为页面固定头部的高度,可根据不同的页面需求更改

        screenHeight: window.innerHeight, //内容区域高度
    
    }
}

2)、 监听screenHeight从而改变table的高度

  watch: {
    // 监听screenHeight从而改变table的高度
    screenHeight(val) {
      this.screenHeight = val;
      this.tableHeight = this.screenHeight - 300;
    },
  },

3)、给mounted挂载window.onresize事件

  mounted() {
    // window.onresize:浏览器尺寸变化响应事件
    window.onresize = () => {
      return (() => {
        // window.innerHeight:浏览器的可用高度
        window.screenHeight = window.innerHeight;
        this.screenHeight = window.screenHeight;
      })();
    };
}

ps:最主要的无非就是将:height改成:max-height

完毕,祝诸君生活愉快,码路无bug~~ 

  • 5
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值