Vue3 Element Plus表格默认显示一行实例
作者:滿
这篇文章主要介绍了Vue3 Element Plus表格默认显示一行实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
方法一:使用 empty-text 属性
<el-table :data="tableData" empty-text="暂无数据"> <!-- 列定义 --> <el-table-column prop="name" label="姓名"></el-table-column> <el-table-column prop="age" label="年龄"></el-table-column> </el-table>
方法二:使用空数组并设置默认行
import { ref } from 'vue';
const tableData = ref([{}]); // 默认包含一个空对象<el-table :data="tableData"> <!-- 列定义 --> <el-table-column prop="name" label="姓名"></el-table-column> <el-table-column prop="age" label="年龄"></el-table-column> </el-table>
方法三:自定义空状态插槽
<el-table :data="tableData">
<!-- 列定义 -->
<el-table-column prop="name" label="姓名"></el-table-column>
<el-table-column prop="age" label="年龄"></el-table-column>
<template #empty>
<el-table-row>
<el-table-column :span="2">暂无数据</el-table-column>
</el-table-row>
</template>
</el-table>方法四:始终显示一行(即使数据为空)
import { ref, computed } from 'vue';
const realData = ref([]); // 实际数据
const tableData = computed(() => {
return realData.value.length > 0 ? realData.value : [{}];
});注意事项
如果使用空对象作为默认行,表格中的列可能会显示为空白
对于需要特殊样式的默认行,可以通过 row-class-name 属性添加自定义类名
如果需要在默认行中添加特定的占位文本,可以在列定义中使用插槽
<el-table-column prop="name" label="姓名">
<template #default="{ row }">
{{ row.name || '-' }}
</template>
</el-table-column>总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
