vue el-table案例
时间: 2023-11-07 10:56:43 浏览: 35
你好!感谢您对ChitGPT的关注和提问。对于您的问题,我可以直接回答,没有任何问题。Vue的el-table是一个非常强大的组件,它可以帮助您轻松地在Vue应用程序中创建漂亮的表格,并提供类似于排序,搜索和分页的功能。如果您需要更多关于vue el-table案例的信息,可以在Vue官方文档或在线社区中进行查找。谢谢!
相关问题
el-table树形数据案例
以下是一个使用 el-table 实现树形数据的简单示例:
```html
<template>
<el-table :data="tableData" :row-key="getRowKey" style="width: 100%">
<el-table-column type="expand">
<template slot-scope="props">
<el-table :data="props.row.children">
<el-table-column prop="name" label="名称"></el-table-column>
<el-table-column prop="age" label="年龄"></el-table-column>
</el-table>
</template>
</el-table-column>
<el-table-column prop="name" label="名称"></el-table-column>
<el-table-column prop="age" label="年龄"></el-table-column>
</el-table>
</template>
<script>
export default {
data() {
return {
tableData: [
{
name: "父节点1",
age: 30,
children: [
{
name: "子节点1",
age: 20
},
{
name: "子节点2",
age: 25
}
]
},
{
name: "父节点2",
age: 35,
children: [
{
name: "子节点3",
age: 28
},
{
name: "子节点4",
age: 32,
children: [
{
name: "孙子节点1",
age: 5
},
{
name: "孙子节点2",
age: 3
}
]
}
]
}
]
};
},
methods: {
getRowKey(row) {
return row.name; // 使用每一行的名称作为唯一标识符
}
}
};
</script>
```
上面的示例中,我们使用嵌套的 el-table 组件来展示树形数据。在父节点的行上,我们使用了 `type="expand"` 的 el-table-column 组件,并在其 slot 中渲染了另一个 el-table 组件,用来展示该父节点的子节点数据。
在子节点的行上,由于没有子节点,因此不会再次渲染 el-table 组件。我们可以通过在 `getRowKey` 方法中指定一个唯一标识符来确保每一行都有一个唯一的 key 值,这样可以帮助 Vue 在渲染时更加高效。
el-table 获取选择行的 案例
以下是一个示例代码,演示如何在 element-ui 的 el-table 组件中获取当前选中的行数据:
```html
<template>
<el-table ref="table" :data="tableData" @selection-change="handleSelectionChange">
<el-table-column type="selection"></el-table-column>
<el-table-column prop="name" label="姓名"></el-table-column>
<el-table-column prop="age" label="年龄"></el-table-column>
<el-table-column prop="gender" label="性别"></el-table-column>
</el-table>
</template>
<script>
export default {
data() {
return {
tableData: [
{ name: '小明', age: 18, gender: '男' },
{ name: '小红', age: 20, gender: '女' },
{ name: '小刚', age: 22, gender: '男' },
{ name: '小丽', age: 24, gender: '女' }
],
selectedRows: []
}
},
methods: {
handleSelectionChange(selection) {
this.selectedRows = selection;
}
}
}
</script>
```
在上述代码中,我们使用了 element-ui 的 el-table 组件,并且在该组件中添加了一个 type="selection" 的列,表示该列为选中列。我们在 el-table 标签上通过 @selection-change 监听事件,在事件处理函数 handleSelectionChange 中获取当前选中的行数据,然后将其存储在 selectedRows 中。
在 Vue.js 组件中,我们可以通过 $refs 来访问 el-table 组件,然后调用 getSelection 方法来获取当前选中的行数据。例如:
```js
const selectedRows = this.$refs.table.getSelection();
```
通过以上代码,我们可以在 Vue.js 中获取到当前选中的行数据。