element ui table批量删除
时间: 2023-04-24 13:01:11 浏览: 188
要使用Element UI表格进行批量删除,您需要遵循以下步骤:
1. 在您的Vue.js组件中导入Element UI表格组件和相关依赖。
```
import { Table, Button, MessageBox } from 'element-ui';
import axios from 'axios';
```
2. 在您的模板中创建一个Element UI表格,并为其设置columns和data属性。
```
<template>
<div>
<el-button type="danger" @click="deleteSelectedRows">删除选中行</el-button>
<el-table :data="tableData" @selection-change="handleSelectionChange">
<el-table-column type="selection"></el-table-column>
<el-table-column label="姓名" prop="name"></el-table-column>
<el-table-column label="年龄" prop="age"></el-table-column>
</el-table>
</div>
</template>
<script>
export default {
data() {
return {
tableData: []
};
},
methods: {
handleSelectionChange(selection) {
this.selectedRows = selection;
},
deleteSelectedRows() {
MessageBox.confirm('确定删除选中行吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
const ids = this.selectedRows.map(row => row.id);
axios.delete(`/api/users/${ids.join(',')}`).then(() => {
this.$message.success('删除成功');
this.tableData = this.tableData.filter(row => !ids.includes(row.id));
this.selectedRows = [];
});
}).catch(() => {
this.$message.info('已取消删除');
});
}
}
};
</script>
```
3. 在您的Vue.js组件中编写删除方法,该方法将删除所选行并从表格中移除它们。
在删除方法中,您需要使用MessageBox确认对话框来提示用户是否要删除所选行。如果用户确认删除,则使用Axios库向服务器发送删除请求。一旦删除请求成功,您需要从表格数据中过滤掉已删除的行,并清空所选行数组。
上面的代码示例假设您的数据来自名为`/api/users`的REST API,并且每个用户对象都有一个名为`id`的属性。如果您的数据源不同,请相应地更改代码。
希望这可以帮助您了解如何使用Element UI表格进行批量删除。
阅读全文