fix: 修复翻牌音效播放失败问题

移除 AudioController 依赖,直接使用 Audio 对象播放新增的 checkout.mp3 音频文件,避免因 AudioController 实例化或配置问题导致的音效播放失败。
This commit is contained in:
2026-04-10 15:33:43 +08:00
parent 38a243af15
commit f4c3734639
2 changed files with 3 additions and 3 deletions

Binary file not shown.

View File

@ -1,20 +1,19 @@
<script setup lang="ts"> <script setup lang="ts">
import { computed, onMounted, ref, watch } from 'vue' import { computed, onMounted, ref, watch } from 'vue'
import { useRoute } from 'vue-router' import { useRoute } from 'vue-router'
import checkoutAudio from '@/assets/audio/checkout.mp3'
import CompetitionLayout from '@/components/custom/user/CompetitionLayout.vue' import CompetitionLayout from '@/components/custom/user/CompetitionLayout.vue'
import { PublishStatus } from '@/enum/business' import { PublishStatus } from '@/enum/business'
import { useRouterPush } from '@/hooks/common/router' import { useRouterPush } from '@/hooks/common/router'
import { fetchUpdatePublishStatus } from '@/service/api/competition' import { fetchUpdatePublishStatus } from '@/service/api/competition'
import { fetchGetQuestionTableByActivityID } from '@/service/api/game' import { fetchGetQuestionTableByActivityID } from '@/service/api/game'
import { useActivityInfoStore } from '@/store/modules/activityinfo' import { useActivityInfoStore } from '@/store/modules/activityinfo'
import { AudioController } from '@/utils/audio'
import { filterRepeat } from '@/utils/data' import { filterRepeat } from '@/utils/data'
const activityInfoStore = useActivityInfoStore() const activityInfoStore = useActivityInfoStore()
const activityInfo = computed(() => activityInfoStore.activityInfo) const activityInfo = computed(() => activityInfoStore.activityInfo)
const { routerPushByKey, routerBack } = useRouterPush() const { routerPushByKey, routerBack } = useRouterPush()
const audioController = new AudioController()
interface QuestionItem { interface QuestionItem {
id: number id: number
@ -128,7 +127,8 @@ function toggleFlip(index: number) {
} }
else { else {
flippedCards.value.add(index) flippedCards.value.add(index)
audioController.play('flip') // 翻牌动效 const audio = new Audio(checkoutAudio)
audio.play().catch(e => console.error('Play audio failed', e))
} }
// 每次点击都播放翻牌音效(无论翻开还是翻回去) // 每次点击都播放翻牌音效(无论翻开还是翻回去)
// audioController.play('flip') // audioController.play('flip')