diff --git a/src/composables/useCommon.js b/src/composables/useCommon.js index 826d51e107b8cea0043b82a1ed4e000090fedeb7..a028849d0405d0ddb4ea7017abdc5d1d291bca4c 100644 --- a/src/composables/useCommon.js +++ b/src/composables/useCommon.js @@ -78,6 +78,31 @@ export function useInitTable(opt = {}) { }) } + // 多选选中ID + const multiSelectionIds = ref([]) + const handleSelectionChange = (e) => { + multiSelectionIds.value = e.map(o => o.id) + } + + // 批量删除 + const multipleTableRef = ref(null) + const handleMultiDelete = () => { + loading.value = true + opt.delete(multiSelectionIds.value) + .then(res => { + toast("删除成功!") + // 清空选中 + if (multipleTableRef.value) { + multipleTableRef.value.clearSelection() + } + getData() + }) + .finally(() => { + loading.value = false + + }) + } + return { searchForm, resetSearchForm, @@ -88,7 +113,10 @@ export function useInitTable(opt = {}) { limit, getData, handleDelete, - handleStatusChange + handleStatusChange, + handleSelectionChange, + multipleTableRef, + handleMultiDelete } diff --git a/src/pages/skus/list.vue b/src/pages/skus/list.vue index 155da31a4f5750e3b01a78e4be6f04ad8f469b3e..2b612dad1c81f1fde69095612648fd00990abda7 100644 --- a/src/pages/skus/list.vue +++ b/src/pages/skus/list.vue @@ -58,9 +58,6 @@ \ No newline at end of file