diff --git a/pages/NursingNew/component/pleasetake/common/addwl.vue b/pages/NursingNew/component/pleasetake/common/addwl.vue index f4b3784..e744f1d 100644 --- a/pages/NursingNew/component/pleasetake/common/addwl.vue +++ b/pages/NursingNew/component/pleasetake/common/addwl.vue @@ -5,8 +5,8 @@ 请领物料 {{Material.length}} - + @@ -15,8 +15,8 @@ - - + + {{!qb?'更多':'收起'}} @@ -45,7 +45,6 @@ } }); const serverUrl = ref(uni.getStorageSync('serverUrl') + '/sys/common/static/') - const scrollleft = ref(0) const qb = ref(false) const moredex = ref(0) // watch(()=>props.Material, @@ -55,6 +54,51 @@ // scrollleft.value = 100*props.Material.length // } // }) + const startX = ref(0) + const ts = (e) => { + startX.value = e.touches[0].clientX + } + const savescrollleft = ref(0) + // 监听用户滚动 + function onScroll(e : any) { + savescrollleft.value = e?.detail?.scrollLeft ?? 0 + } + const scrollleft = ref(0) + const canmove = (e : any) => { + const moveX = e.touches[0].clientX + const diff = moveX - startX.value + // diff 为负值就是向左滑 + if (diff < -60 && !qb.value) { // 👉 60px 阈值,随便改 + qb.value = !qb.value; + moredex.value = 0; + // 这么写是解决这个组件的响应丢失的bug + scrollleft.value = savescrollleft.value + 125.99 + setTimeout(() => { + scrollleft.value = savescrollleft.value + 126 + }, 50) + } + if (diff > 60 && qb.value) { // 👉 60px 阈值,随便改 + qb.value = !qb.value; + moredex.value = 0; + scrollleft.value = savescrollleft.value - 125.99 + setTimeout(() => { + scrollleft.value = savescrollleft.value - 126 + }, 50) + } + } + const moveleft = () => { + if (qb.value) { + scrollleft.value = savescrollleft.value + 125.99 + setTimeout(() => { + scrollleft.value = savescrollleft.value + 126 + }, 50) + } else { + scrollleft.value = savescrollleft.value - 125.99 + setTimeout(() => { + scrollleft.value = savescrollleft.value - 126 + }, 50) + } + } const timeout = ref(false) onMounted(()=>{ setTimeout(()=>{ @@ -140,17 +184,17 @@ } &:nth-child(2) { - right: 4.2vw; + right: 3.9vw; z-index: 3; } &:nth-child(3) { - right: 8.5vw; + right: 7.7vw; z-index: 2; } &:nth-child(4) { - right: 12.3vw; + right: 11.6vw; z-index: 2; } } diff --git a/pages/procurement/material.vue b/pages/procurement/material.vue index eb8c5cf..8c49388 100644 --- a/pages/procurement/material.vue +++ b/pages/procurement/material.vue @@ -246,7 +246,6 @@ } const moveleft = () => { - console.log("qb", qb.value) if (qb.value) { scrollleft.value = savescrollleft.value + 95 setTimeout(() => {