feat: 完善课程学习与技能树体验
完善课程资源、学习进度与技能树解锁体验,统一视频播放与引导相关交互。 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
1 parent
6f289959be
commit
3e258b87d9
314 files changed
+7020
-3386
No files matched your search
@@ -8,7 +8,12 @@ import { Video } from '@/components'
|
||||
import QuestionQuiz, {
|
||||
type Question,
|
||||
} from '@/components/QuestionQuiz/QuestionQuiz.vue'
|
||||
import { getPublicPath, getStaticImage, IMAGE_PATHS } from '@/utils'
|
||||
import {
|
||||
getPublicPath,
|
||||
getStaticImage,
|
||||
IMAGE_PATHS,
|
||||
getVideoPoster,
|
||||
} from '@/utils'
|
||||
import { GuideSteps } from '@/components/Guide'
|
||||
import GuideStepsItem from '@/components/Guide/GuideStepsItem.vue'
|
||||
import { useBasicElementsStore } from '@/stores/modules/basic-elements'
|
||||
@@ -163,10 +168,7 @@ const handleVideoChange = () => {
|
||||
return
|
||||
}
|
||||
|
||||
nextTick(() => {
|
||||
// 使用受控播放来触发下一个视频自动播放
|
||||
playing.value = true
|
||||
})
|
||||
playing.value = true
|
||||
}
|
||||
|
||||
const handleClose = () => {
|
||||
@@ -198,9 +200,7 @@ const handleStepClick = (index: number) => {
|
||||
showQuiz.value = false
|
||||
currentVideoIndex.value = index
|
||||
currentNavigationStep.value = index
|
||||
nextTick(() => {
|
||||
playing.value = true
|
||||
})
|
||||
playing.value = true
|
||||
}
|
||||
|
||||
const handleStepNavigationClose = () => {
|
||||
@@ -264,6 +264,7 @@ onBeforeRouteLeave((to) => {
|
||||
|
||||
<Video
|
||||
:src="currentVideo"
|
||||
:poster="getVideoPoster(currentVideo)"
|
||||
v-model="playing"
|
||||
:muted="false"
|
||||
:volume="1"
|
||||
@@ -291,7 +292,6 @@ onBeforeRouteLeave((to) => {
|
||||
<!-- 步骤导航抽屉 -->
|
||||
<StepNavigation
|
||||
:visible="showStepNavigation"
|
||||
:background-image="getStaticImage('work/vlog背景全屏待定')"
|
||||
:steps="navigationSteps"
|
||||
:current-step-index="currentNavigationStep"
|
||||
:completed-steps="completedNavigationSteps"
|
||||
|
||||
Reference in new issue
Block a user