vxe-table vue3 删除选中行
时间: 2023-06-20 07:05:18 浏览: 385
在 Vue3 中使用 vxe-table 删除选中行,你可以使用以下步骤:
1. 在组件中引入 vxe-table 的相关组件和依赖
```javascript
import XEUtils from 'xe-utils'
import VXETable from 'vxe-table'
import 'vxe-table/lib/style.css'
```
2. 在模板中使用 vxe-table 组件
```html
<vxe-table ref="table" :data="tableData" :columns="columns" row-key="id" checkbox-selection></vxe-table>
```
3. 在方法中编写删除选中行的逻辑
```javascript
methods: {
deleteSelectedRows() {
const { $refs } = this
const table = $refs.table
const selection = table.getCheckboxRecords()
if (!selection.length) {
return this.$message.warning('请先选择需要删除的行')
}
this.$confirm('确定要删除选中的行吗?', '提示', {
type: 'warning'
}).then(() => {
XEUtils.remove(tableData, item => selection.some(selected => selected.id === item.id))
table.clearCheckboxRow()
this.$message.success('删除成功')
})
}
}
```
在以上代码中,我们首先通过 `$refs` 获取到 vxe-table 实例,然后使用 `getCheckboxRecords()` 方法获取当前选中的行数据,如果没有选中任何数据则返回提示信息。
然后使用 `remove()` 方法从数据源中删除选中行,再使用 `clearCheckboxRow()` 方法清空选中状态。最后弹出删除成功的提示框。
希望这个回答能够帮助到你。
阅读全文