From e9819c895b99564bf07d036e494cb0284fa240be Mon Sep 17 00:00:00 2001 From: "wu.jian2" Date: Thu, 13 Jul 2023 11:48:59 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=A4=9A=E9=80=89?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E5=90=8E=E6=97=A0=E6=B3=95=E5=8F=96=E6=B6=88?= =?UTF-8?q?=E7=9A=84=E6=83=85=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BigScreenDesign/MouseSelect/index.vue | 15 ++++++++++- data-room-ui/packages/js/store/mutations.js | 25 +++++++++++++------ 2 files changed, 32 insertions(+), 8 deletions(-) diff --git a/data-room-ui/packages/BigScreenDesign/MouseSelect/index.vue b/data-room-ui/packages/BigScreenDesign/MouseSelect/index.vue index 17910aa3..043dde26 100644 --- a/data-room-ui/packages/BigScreenDesign/MouseSelect/index.vue +++ b/data-room-ui/packages/BigScreenDesign/MouseSelect/index.vue @@ -120,7 +120,7 @@ export default { // this.changeActiveCodes([]) // this.changeActiveCode('') } - + // 鼠标按下,并开始选择 if (event.button === 0 && this.isSelecting) { this.isSelecting = false if (newTime - time < 300) { @@ -142,6 +142,19 @@ export default { this.startY = 0 this.endX = 0 this.endY = 0 + } else if (!this.shiftKeyDown && !this.isSelecting) { + // 重置起始点和结束点的坐标 + this.startX = 0 + this.startY = 0 + this.endX = 0 + this.endY = 0 + this.$emit('selectArea', { + startX: Math.min(this.startX, this.endX), + startY: Math.min(this.startY, this.endY), + endX: Math.max(this.startX, this.endX), + endY: Math.max(this.startY, this.endY) + }) + this.changeActiveCodes([]) } }, handleMouseLeave () { diff --git a/data-room-ui/packages/js/store/mutations.js b/data-room-ui/packages/js/store/mutations.js index 8c5bc62c..06f1a11c 100644 --- a/data-room-ui/packages/js/store/mutations.js +++ b/data-room-ui/packages/js/store/mutations.js @@ -37,13 +37,24 @@ export default { state.activeItemConfig = _.cloneDeep(activeItem) }, changeActiveCodes (state, codes) { - state.activeCodes = codes - state.pageInfo.chartList = state.pageInfo.chartList?.map(chart => { - return { - ...chart, - group: (codes.includes(chart.code) && !chart.group) ? 'tempGroup' : chart.group - } - }) + // 传入codes,将codes中的组件的group改为tempGroup,不传入或者传入空数组,将所有组件的group改为'',即取消组合 + if (codes.length !== 0) { + state.activeCodes = codes + state.pageInfo.chartList = state.pageInfo.chartList?.map(chart => { + return { + ...chart, + group: (codes.includes(chart.code) && !chart.group) ? 'tempGroup' : chart.group + } + }) + } else { + state.activeCodes = codes + state.pageInfo.chartList = state.pageInfo.chartList?.map(chart => { + return { + ...chart, + group: '' + } + }) + } }, // 改变当前hover组件id changeHoverCode (state, code) {