el-table实现二维数组表格
时间: 2023-10-14 15:48:45 浏览: 196
要实现二维数组的表格,可以使用el-table组件的嵌套表头功能,并根据二维数组的结构动态生成表格列和数据。
首先,需要定义二维数组的数据结构,例如:
```javascript
data() {
return {
tableData: [
['A', 'B', 'C'],
['D', 'E', 'F'],
['G', 'H', 'I']
]
}
}
```
然后,在模板中使用el-table组件,并使用v-for指令动态生成表头和表格数据:
```html
<el-table :data="tableData">
<el-table-column v-for="(row, rowIndex) in tableData" :key="rowIndex" label="Row">
<template slot-scope="{ row }">
<el-table-column v-for="(cell, cellIndex) in row" :key="cellIndex" :label="'Column ' + (cellIndex + 1)">
{{ cell }}
</el-table-column>
</template>
</el-table-column>
</el-table>
```
在这个例子中,我们使用v-for指令遍历二维数组的每一行,并使用el-table-column动态生成每一行的表头。然后,再在每一行的slot-scope中使用v-for指令遍历该行的每一个单元格,并使用el-table-column动态生成每一列的表头和数据。
最终效果就是一个二维数组的表格,每一行作为一个表头,每一列作为一个表格列,其中的数据来自于二维数组。
完整的代码示例:
```html
<template>
<el-table :data="tableData">
<el-table-column v-for="(row, rowIndex) in tableData" :key="rowIndex" label="Row">
<template slot-scope="{ row }">
<el-table-column v-for="(cell, cellIndex) in row" :key="cellIndex" :label="'Column ' + (cellIndex + 1)">
{{ cell }}
</el-table-column>
</template>
</el-table-column>
</el-table>
</template>
<script>
export default {
data() {
return {
tableData: [
['A', 'B', 'C'],
['D', 'E', 'F'],
['G', 'H', 'I']
]
}
}
}
</script>
```
这样就可以实现一个二维数组的表格,每一行作为表头,每一列作为表格列,并显示相应的数据。
阅读全文