如果需要根据窗口大小动态设置表格的最大高度,可以通过计算属性实现:
<template>
<div>
<el-table
v-loading="loading"
:data="safeList"
:max-height="tableMaxHeight"
@selection-change="handleSelectionChange"
>
<!-- 表格列 -->
</el-table>
</div>
</template>
<script>
export default {
data() {
return {
loading: false,
safeList: [],
selectedRows: [],
};
},
computed: {
// 动态计算表格最大高度
tableMaxHeight() {
return window.innerHeight - 200; // 根据窗口高度动态调整
},
},
created() {
this.fetchData();
},
methods: {
fetchData() {
this.loading = true;
setTimeout(() => {
this.safeList = [
{ name: '张三', age: 25, address: '北京市朝阳区' },
{ name: '李四', age: 30, address: '上海市浦东新区' },
{ name: '王五', age: 28, address: '广州市天河区' },
];
this.loading = false;
}, 2000);
},
handleSelectionChange(selection) {
this.selectedRows = selection;
},
},
};
</script>
通过以上方法,可以灵活地为 el-table
设置最大高度,并实现加载状态和选中行数据的处理。