From 94e87bd4072ab9716ea0baf2a1188654847e13f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E8=88=AA?= Date: Mon, 9 Mar 2026 14:56:44 +0800 Subject: [PATCH] =?UTF-8?q?JLBA202505130001=5F=E5=85=B3=E4=BA=8E=E5=90=89?= =?UTF-8?q?=E6=9E=97=E9=93=B6=E8=A1=8C=E6=96=B0=E5=BB=BAAI=E6=99=BA?= =?UTF-8?q?=E8=83=BD=E5=9F=B9=E8=AE=AD=E7=B3=BB=E7=BB=9F=E7=9A=84=E9=9C=80?= =?UTF-8?q?=E6=B1=82=5F=E8=AF=AD=E9=9F=B3=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/course/components/talkingItem.vue | 82 +- src/pages/course/study.vue | 3531 ++++++++++--------- src/pages/courseDetail/index.vue | 4 +- 3 files changed, 1873 insertions(+), 1744 deletions(-) diff --git a/src/pages/course/components/talkingItem.vue b/src/pages/course/components/talkingItem.vue index b074c3b5..c19c9d84 100644 --- a/src/pages/course/components/talkingItem.vue +++ b/src/pages/course/components/talkingItem.vue @@ -616,7 +616,8 @@ }; const downloadFnc = ref(null) const playVoice = (readType = 'pgth') => { - console.log('playVoice11111111') + + console.log(unref(dataInfo)) if (voiceIsPlaying.value) return let _content = showContent.value; if (!_content) { @@ -758,6 +759,37 @@ setTimeout(() => { setVoiceTime(0); }, 100); + }else{ + console.log(type.value) + if(type.value === 1){ + + downloadFile(unref(dataInfo).bucketKey) + .then((res) => { + + if (res?.data) { + common.msg(res.data.message); + return; + } + voiceLoading.value = false; + itemVoice.value = res.tempFilePath; + talkVoiceObj.value.src = res.tempFilePath; + console.log('talkVoiceObj.value.src', talkVoiceObj.value.src) + if (voiceIsPlaying.value) return + if(unref(dataInfo)?.id !== props.activeVoiceId) return + talkVoiceObj.value.play(); + console.log('播放') + storageStore.setStorage('audio', unref(dataInfo)?.id, itemVoice.value); + setTimeout(()=>{ + setVoiceTime(0) + },100) + }) + .catch((err) => { + console.log('err',err) + voiceLoading.value = false; + emit('changePlay', ''); + }); + + } } // else{ // setTimeout(()=>{ @@ -776,33 +808,39 @@ } }) } - // const setVoiceTime = (sum) => { - // sum += 1; - // if (talkVoiceObj.value.duration) { - // voiceTime.value = (Math.ceil(talkVoiceObj.value.duration) || 0) + 's'; - // } else { - // if (sum === 100) { - // voiceTime.value = (unref(dataInfo).voiceTime || 0) + 's'; - // return; - // } - // setTimeout(() => { - // setVoiceTime(sum); - // }, 300); - // } - // }; const playQnsVoice = (readType = 'qns', item) => { + console.log(type.value) if (type.value === 2) { // 文本转语音 playVoice(readType); return; + }else{ + emit('changePlay', unref(dataInfo)?.id) + if(talkVoiceObj.value && talkVoiceObj.value.src) { + console.log(2) + console.log('talkVoiceObj.value.src', talkVoiceObj.value.src) + talkVoiceObj.value.play() + return + }else{ + console.log(3) + talkVoiceObj.value.src = '' + if(unref(dataInfo).talkingVoice){ + setTimeout(()=>{ + talkVoiceObj.value.src = unref(dataInfo).talkingVoice + talkVoiceObj.value.play() + isPlaying.value = true + },100) + } + + } } - // readType 阅读内容类型pgrh段落/qns问题 - emit('changePlay', unref(dataInfo)?.id); - setTimeout(() => { - itemVoice.value = item.talkingVoice; - talkVoiceObj.value.src = item.talkingVoice; - talkVoiceObj.value.play(); - }, 100); + // // readType 阅读内容类型pgrh段落/qns问题 + // emit('changePlay', unref(dataInfo)?.id); + // setTimeout(() => { + // itemVoice.value = item.talkingVoice; + // talkVoiceObj.value.src = item.talkingVoice; + // talkVoiceObj.value.play(); + // }, 100); }; const translateLoading = ref(false); // 翻译 diff --git a/src/pages/course/study.vue b/src/pages/course/study.vue index abff4c30..a445e522 100644 --- a/src/pages/course/study.vue +++ b/src/pages/course/study.vue @@ -1,85 +1,81 @@ + .overlay-radio-box { + position: absolute; + left: 100rpx; + top: 5rpx; + pointer-events: none; + } + } + } + } + } + } + } + \ No newline at end of file diff --git a/src/pages/courseDetail/index.vue b/src/pages/courseDetail/index.vue index ab9f1978..1daac1fa 100644 --- a/src/pages/courseDetail/index.vue +++ b/src/pages/courseDetail/index.vue @@ -163,12 +163,12 @@ const sendReply = (data) => { console.log(data,'111111111111') commentRef.value?.setReplyData(data, ()=>{ - commentInputRef.value.hideAll(true) + commentInputRef.value?.hideAll(true) }); } const hideKeyboradNow = () => { if (isShowing.value) return - commentInputRef.value.hideAll() + commentInputRef.value?.hideAll() } const getData = async () => { common.loading();