elementui 全选
时间: 2023-08-28 07:07:53 浏览: 90
可以使用 ElementUI 的表格组件来实现全选功能,具体步骤如下:
1. 在表格的列定义中添加一个自定义列,用来显示全选复选框,例如:
```html
<el-table-column type="selection" width="55"></el-table-column>
```
2. 在表格的数据源中添加一个选中状态的属性,例如:
```javascript
data() {
return {
tableData: [
{ id: 1, name: '张三', age: 18, selected: false },
{ id: 2, name: '李四', age: 20, selected: false },
{ id: 3, name: '王五', age: 22, selected: false },
],
...
}
},
```
3. 在全选复选框的绑定值中使用一个计算属性来实现:
```html
<el-checkbox v-model="isAllSelected" @change="handleAllSelectChange">全选</el-checkbox>
```
```javascript
computed: {
isAllSelected: {
get() {
return this.tableData.every(item => item.selected);
},
set(value) {
this.tableData.forEach(item => item.selected = value);
},
},
},
```
4. 在表格的行定义中添加一个选中状态的列,同时绑定每行数据的选中状态属性:
```html
<el-table-column type="index" width="55"></el-table-column>
<el-table-column prop="name" label="姓名"></el-table-column>
<el-table-column prop="age" label="年龄"></el-table-column>
<el-table-column label="操作">
<template slot-scope="{ row }">
<el-checkbox v-model="row.selected" @change="handleSelectChange(row)">选中</el-checkbox>
</template>
</el-table-column>
```
5. 在选中状态发生变化时,更新全选复选框的状态:
```javascript
methods: {
handleSelectChange() {
this.isAllSelected = this.tableData.every(item => item.selected);
},
handleAllSelectChange() {
// 这里不需要处理,因为绑定值已经通过计算属性实现了
},
},
```
这样就可以实现 ElementUI 表格的全选功能了。
阅读全文