From 180d3e7c96bc78d1686b625d6a49f1000328faeb Mon Sep 17 00:00:00 2001 From: lyf <2514544224@qq.com> Date: Wed, 8 Jul 2026 22:17:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=AE=B2=E8=A7=A3=E6=92=AD?= =?UTF-8?q?=E6=94=BE=E5=99=A8=E8=B7=A8=E9=A1=B5=E9=9D=A2=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/audio/GlobalAudioPlayerHost.vue | 14 ++++++++++++-- src/pages/exhibit/detail.vue | 2 +- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/components/audio/GlobalAudioPlayerHost.vue b/src/components/audio/GlobalAudioPlayerHost.vue index d354765..48d7d6e 100644 --- a/src/components/audio/GlobalAudioPlayerHost.vue +++ b/src/components/audio/GlobalAudioPlayerHost.vue @@ -69,15 +69,21 @@ const handleToggle = () => { } const applyHostDisplayMode = () => { - if (!hasAudio.value || currentDisplayMode.value === 'expanded') { + if (!hasAudio.value) { return } - if (props.displayMode === 'mini' || props.displayMode === 'floating') { + if (currentDisplayMode.value !== props.displayMode) { player.setDisplayMode(props.displayMode) } } +const isCurrentH5Route = (route: string) => { + if (typeof window === 'undefined') return false + + return window.location.hash.replace(/^#/, '') === route +} + const handleStop = () => { player.stop() } @@ -109,6 +115,10 @@ const handleExpand = () => { return } + if (isCurrentH5Route(route)) { + return + } + uni.navigateTo({ url: route }) diff --git a/src/pages/exhibit/detail.vue b/src/pages/exhibit/detail.vue index 65f5e76..7202efd 100644 --- a/src/pages/exhibit/detail.vue +++ b/src/pages/exhibit/detail.vue @@ -301,7 +301,7 @@ const showAudioPlayer = computed(() => ( )) const isDetailAudioDockVisible = computed(() => ( exhibit.value.audio.status === 'playable' - && !showAudioPlayer.value + && !isCurrentDetailAudio.value && !detailAudioDockDismissed.value )) const audioDockTitle = computed(() => (