From 0ce2fc2729637a6ef16261adcfe8eb1245cdb171 Mon Sep 17 00:00:00 2001 From: zhangjiming Date: Tue, 21 Jan 2025 10:56:37 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=95=BF=E6=8C=89=E5=A4=84?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/Index/components/Consumables/DragAreaEx.vue | 4 ++-- src/pages/Index/components/Consumables/SliderAreaEx.vue | 11 ++++++----- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/pages/Index/components/Consumables/DragAreaEx.vue b/src/pages/Index/components/Consumables/DragAreaEx.vue index 7f27659..51db41c 100644 --- a/src/pages/Index/components/Consumables/DragAreaEx.vue +++ b/src/pages/Index/components/Consumables/DragAreaEx.vue @@ -93,11 +93,11 @@ function handleDrag(event) { hValue.value = Math.min(1, Math.max(0, percentX)) * hTotalVal.value vValue.value = Math.min(1, Math.max(0, percentY)) * vTotalVal.value - emit('update:sliderValue', hValue.value.toFixed(), vValue.value.toFixed()) + emit('update:sliderValue', +hValue.value.toFixed(), +vValue.value.toFixed()) } function handleEnd() { - emit('update:sliderEndValue', hValue.value.toFixed(), vValue.value.toFixed()) + emit('update:sliderEndValue', +hValue.value.toFixed(), +vValue.value.toFixed()) isDragging.value = false document.removeEventListener('mousemove', handleDrag) document.removeEventListener('touchmove', handleDrag) diff --git a/src/pages/Index/components/Consumables/SliderAreaEx.vue b/src/pages/Index/components/Consumables/SliderAreaEx.vue index fdfde50..b3294fb 100644 --- a/src/pages/Index/components/Consumables/SliderAreaEx.vue +++ b/src/pages/Index/components/Consumables/SliderAreaEx.vue @@ -75,7 +75,8 @@ function handleStart(event) { isDragging.value = true longPressTimer = setTimeout(() => { - if (Math.round(sliderValue.value) === props.currValue) { + longPressTimer = null + if (+sliderValue.value.toFixed() === props.currValue) { emit('longPress', props.order) } }, 1200) @@ -87,7 +88,6 @@ function handleStart(event) { } function handleDrag(event) { - if (longPressTimer) { clearTimeout(longPressTimer) longPressTimer = null @@ -102,7 +102,7 @@ function handleDrag(event) { sliderValue.value = totalVal.value - Math.min(1, Math.max(0, percent)) * totalVal.value // console.log(percent, sliderValue.value) - emit('update:sliderValue', sliderValue.value.toFixed(), props.order) + emit('update:sliderValue', +sliderValue.value.toFixed(), props.order) } function handleEnd() { @@ -110,9 +110,10 @@ function handleEnd() { if (longPressTimer) { clearTimeout(longPressTimer) longPressTimer = null - } else { - emit('update:sliderEndValue', sliderValue.value.toFixed(), props.order) } + + emit('update:sliderEndValue', +sliderValue.value.toFixed(), props.order) + document.removeEventListener('mousemove', handleDrag) document.removeEventListener('touchmove', handleDrag) document.removeEventListener('mouseup', handleEnd)