通过 获取window.innerHeight浏览器窗口的视口(viewport)高度(以像素为单位),然后减去除table的高度。
以Vue2为例:
-
定义一个属性,作为表格动态的高度,初始值为0
data() { return { tableMaxHeight: 0 } } -
声明一个方法,用来修改
tableMaxHeight的值methods: { setTableMaxHeight () { this.tableMaxHeight = window.innerHeight - 285 } } -
在组件加载完毕就是mounted生命周期函数中:
mounted() { this.$nextTick(() => { // 页面加载完毕调用 this.getTableMaxHeight() // 窗口大小变化调用 window.addEventListener('resize', this.getTableMaxHeight) }) }记得一定要加
$nextTick,确保页面中的元素全部渲染完毕。 -
最后一步,别忘了卸载事件!
beforeDestroy () { // 删除window绑定的resize事件 window.removeEventListener('resize', this.getTableMaxHeight) }