el-table横向表格
时间: 2024-10-17 12:00:43 浏览: 22
`el-table`是Element UI库中的一个组件,它用于创建交互式的表格,支持丰富的数据展示和处理功能。在Vue.js应用中,如果你想创建一个横向展开(即列宽可以超出常规宽度并水平滚动)的表格,你可以使用`width`属性和`show-header`属性。
例如,你可以设置`width`属性为`100%`,让表格自适应容器宽度,并通过`expand-width`属性来控制展开行的宽度:
```html
<template>
<el-table :data="tableData" style="width: 100%">
<el-table-column type="index"></el-table-column>
<el-table-column prop="name" label="姓名" width="180"></el-table-column>
<el-table-column prop="age" label="年龄">
<template slot-scope="scope">
<span v-if="!scope.row.isExpand">{{ scope.row.age }}</span>
<el-collapse :value="scope.row.isExpand" @change="handleExpandChange">
<p>详细信息...</p>
</el-collapse>
</template>
</el-table-column>
<!-- 可能还有其他列... -->
<el-table-column type="expand" expand-width="500">
<template slot-scope="props">
<div>{{ props.row.detail }}</div>
</template>
</el-table-column>
</el-table>
</template>
<script>
export default {
data() {
return {
tableData: [
{ name: '张三', age: 24, isExpand: false, detail: '详细信息...' },
// ... 更多数据
],
handleExpandChange(isExpanded) {
this.$set(this.tableData, isExpanded ? 'isExpand' : 'isExpand', !isExpanded);
}
};
}
};
</script>
```
在这个例子中,当鼠标悬停在年龄列上时,会显示一个展开按钮,点击后可以展开包含详细信息的额外内容,而展开部分的宽度就是由`expand-width`属性控制的。
阅读全文