From 3094503b176af3522e62a9fd2df021f1b38e23a3 Mon Sep 17 00:00:00 2001 From: Jason <5340635+wen-jason@user.noreply.gitee.com> Date: Thu, 13 Oct 2022 15:01:12 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=9B=BE=E7=89=87=E9=80=89?= =?UTF-8?q?=E6=8B=A9=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- admin/src/components/material/picker.vue | 27 ++++++++++++++---------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/admin/src/components/material/picker.vue b/admin/src/components/material/picker.vue index e55bbea7..f6506813 100644 --- a/admin/src/components/material/picker.vue +++ b/admin/src/components/material/picker.vue @@ -83,6 +83,7 @@ import FileItem from './file.vue' import Material from './index.vue' import Preview from './preview.vue' import useAppStore from '@/stores/modules/app' +import { useThrottleFn } from '@vueuse/shared' export default defineComponent({ components: { Popup, @@ -170,17 +171,21 @@ export default defineComponent({ if (limit.value == -1) return null return limit.value - fileList.value.length }) - const handleConfirm = () => { - const selectUri = select.value.map((item) => - props.excludeDomain ? item.path : item.uri - ) - if (!isAdd.value) { - fileList.value.splice(currentIndex.value, 1, selectUri.shift()) - } else { - fileList.value = [...fileList.value, ...selectUri] - } - handleChange() - } + const handleConfirm = useThrottleFn( + () => { + const selectUri = select.value.map((item) => + props.excludeDomain ? item.path : item.uri + ) + if (!isAdd.value) { + fileList.value.splice(currentIndex.value, 1, selectUri.shift()) + } else { + fileList.value = [...fileList.value, ...selectUri] + } + handleChange() + }, + 1000, + false + ) const showPopup = (index: number) => { if (disabled.value) return if (index >= 0) {