el-table-column动态添加
要动态添加<el-table-column>,你可以使用v-for指令来遍历一个数组,并根据数组的内容动态生成<el-table-column>。
首先,在你的Vue组件中定义一个数组,例如columns,用来存储要动态添加的列信息。每个数组元素都包含要展示的列的一些属性,例如prop(对应表格数据的字段名)、label(列的标题)等。
然后,你可以在模板中使用v-for指令来遍历columns数组,并根据数组元素的内容动态生成<el-table-column>。
以下是一个示例:
<template>
<div>
<el-table :data="tableData">
<el-table-column
v-for="column in columns"
:key="column.prop"
:prop="column.prop"
:label="column.label"
:sortable="column.sortable"
></el-table-column>
</el-table>
</div>
</template>
<script>
export default {
data() {
return {
tableData: [
{ id: 1, name: 'John', age: 20 },
{ id: 2, name: 'Jane', age: 25 },
{ id: 3, name: 'Bob', age: 30 }
],
columns: [
{ prop: 'id', label: 'ID', sortable: true },
{ prop: 'name', label: 'Name', sortable: false },
{ prop: 'age', label: 'Age', sortable: true }
]
}
}
}
</script>
在上述示例中,columns数组定义了3列,分别对应表格数据的id、name和age字段。v-for指令会根据columns数组的内容动态生成3个<el-table-column>。每个<el-table-column>的属性值都来自于对应数组元素的属性。
你可以根据自己的需求修改columns数组的内容,以添加或删除列
原文地址: https://www.cveoy.top/t/topic/ixbf 著作权归作者所有。请勿转载和采集!