fix(outbound): 修复选单列表移除按钮排序后索引错位导致删错行
- 表格绑定 sortedSelectedItems(按库位排序),但移除按钮用 $index 操作原始 selectedItems - 排序后索引与原始数组不一致,导致删除错误的行 - 改为按 uniqueKey 精确定位删除
This commit is contained in:
@ -105,8 +105,8 @@
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column label="操作" width="80" align="center" fixed="right">
|
||||
<template #default="{ $index }">
|
||||
<el-button v-if="!isBulkMode && userStore.hasPermission('outbound_selection:operation')" type="danger" link @click="removeRow($index)">移除</el-button>
|
||||
<template #default="{ row }">
|
||||
<el-button v-if="!isBulkMode && userStore.hasPermission('outbound_selection:operation')" type="danger" link @click="removeRow(row)">移除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@ -884,8 +884,12 @@ const batchRemove = () => {
|
||||
}).catch(() => {})
|
||||
}
|
||||
|
||||
const removeRow = (index: number) => {
|
||||
selectedItems.value.splice(index, 1)
|
||||
const removeRow = (row: any) => {
|
||||
// ★ 按 uniqueKey 精确定位删除,避免排序后索引错位导致删错
|
||||
const idx = selectedItems.value.findIndex(item => item.uniqueKey === row.uniqueKey)
|
||||
if (idx > -1) {
|
||||
selectedItems.value.splice(idx, 1)
|
||||
}
|
||||
}
|
||||
|
||||
const handlePreview = () => {
|
||||
|
||||
Reference in New Issue
Block a user