From 77ef4c05b970edcc8aba363cc4cd52a74d6883c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A5=94=E8=B7=91=E7=9A=84=E9=9D=A2=E6=9D=A1?= <1262327911@qq.com> Date: Sat, 13 Aug 2022 18:38:36 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=A4=84=E7=90=86=E5=B1=82=E7=BA=A7?= =?UTF-8?q?=E5=8F=B3=E9=94=AE=E5=A4=9A=E9=80=89=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/chart/ContentLayers/index.vue | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/src/views/chart/ContentLayers/index.vue b/src/views/chart/ContentLayers/index.vue index 13184805..830e3530 100644 --- a/src/views/chart/ContentLayers/index.vue +++ b/src/views/chart/ContentLayers/index.vue @@ -26,9 +26,9 @@ v-else :componentData="element" @mousedown="mousedownHandle(element)" - @mouseenter="mouseenterHandle(element)" + @mouseenter="mouseenterHandle(element)" @mouseleave="mouseleaveHandle(element)" - @contextmenu="handleContextMenu($event, element)" + @contextmenu="handleContextMenu($event, element, optionsHandle)" > @@ -46,6 +46,7 @@ import { useChartLayoutStore } from '@/store/modules/chartLayoutStore/chartLayou import { ChartLayoutStoreEnum } from '@/store/modules/chartLayoutStore/chartLayoutStore.d' import { useChartEditStore } from '@/store/modules/chartEditStore/chartEditStore' import { CreateComponentType, CreateComponentGroupType } from '@/packages/index.d' +import { MenuOptionsItemType } from '@/views/chart/hooks/useContextMenu.hook.d' import { useContextMenu } from '@/views/chart/hooks/useContextMenu.hook' import { MenuEnum } from '@/enums/editPageEnum' @@ -60,6 +61,26 @@ const chartEditStore = useChartEditStore() const { handleContextMenu, onClickOutSide } = useContextMenu() +// 右键事件 +const optionsHandle = ( + targetList: MenuOptionsItemType[], + allList: MenuOptionsItemType[], + item: CreateComponentType +) => { + // 多选处理 + if (chartEditStore.getTargetChart.selectId.length > 1) { + const list: MenuOptionsItemType[] = [] + targetList.forEach(item => { + // 成组 + if (item.key === MenuEnum.GROUP) { + list.push(item) + } + }) + return list + } + return targetList +} + // 逆序展示 const reverseList = computed(() => { const list: Array = cloneDeep(chartEditStore.getComponentList)