feat: 添加思维导图支持,更新引导步骤组件,优化视频播放与学习进度追踪功能

This commit is contained in:
zhongyidian committed 2026-01-20 17:54:05 +08:00
1 parent e9a1fee27f
commit c4c9be9d35
98 files changed
+3178 -551

No files matched your search

@@ -1,6 +1,6 @@
<script lang="tsx" setup>
import { getBackgroundImage, getStaticImage, IMAGE_PATHS } from '@/utils'
import { GuideSteps, GuideStepsItem } from '@/components/Guide'
import { GuideSteps, GuideStepsItem, type GuideStep } from '@/components/Guide'
import { ref, computed } from 'vue'
import { useRouter } from 'vue-router'
import { ImgButton } from '@/components/Button'
@@ -71,12 +71,7 @@ const prevPhone = () => {
}
}
interface SimpleStep {
id: string
content: string
}
const handleStepChange = (_step: SimpleStep | null, index: number) => {
const handleStepChange = (_step: GuideStep | null, index: number) => {
stepIndex.value = index
}
+2 -2
View File
@@ -3,7 +3,7 @@ import { useRouter } from 'vue-router'
import { Video } from '@/components'
import { ImgButton } from '@/components/Button'
import { StarRating } from '@/components/Rating'
import { IMAGE_PATHS, getBackgroundImage } from '@/utils'
import { IMAGE_PATHS, getBackgroundImage, getPublicPath } from '@/utils'
import { Overlay } from '@/components/Overlay'
import { ref } from 'vue'
@@ -76,7 +76,7 @@ const handleBack = (): void => {
@click="showModal = true"
/>
<Video
:src="decodeURIComponent(props.path)"
:src="getPublicPath(decodeURIComponent(props.path))"
:volume="1"
:muted="false"
:controls="true"
+2 -7
View File
@@ -1,6 +1,6 @@
<script lang="tsx" setup>
import { getBackgroundImage, getStaticImage, IMAGE_PATHS } from '@/utils'
import { GuideSteps, GuideStepsItem } from '@/components/Guide'
import { GuideSteps, GuideStepsItem, type GuideStep } from '@/components/Guide'
import { ref, computed, onMounted } from 'vue'
import { useRouter } from 'vue-router'
import { ImagePreview } from '@/components'
@@ -19,12 +19,7 @@ const back = () => {
router.back()
}
interface SimpleStep {
id: string
content: string
}
const handleStepChange = (_step: SimpleStep | null, index: number) => {
const handleStepChange = (_step: GuideStep | null, index: number) => {
stepIndex.value = index
}
+3 -3
View File
@@ -65,7 +65,7 @@ const navigationSteps = ref([
// 步骤导航相关状态
const showStepNavigation = ref(false)
const currentNavigationStep = ref(1) // 对应视频索引,从0开始
const currentNavigationStep = ref(0) // 对应视频索引,从0开始
// 视频列表
const videoList = [second, third, fourth, five, six]
@@ -239,7 +239,7 @@ onMounted(() => {
</div>
</template> -->
<template v-slot:overlay>
<div
<!-- <div
:class="[
'absolute left-4 top-4 z-10 pointer-events-auto w-[359px] h-[96px] bg-cover bg-center',
'flex justify-center items-center'
@@ -253,7 +253,7 @@ onMounted(() => {
>
{{ label }}
</span>
</div>
</div> -->
<!-- <ImgButton
class="absolute left-4 top-4 z-10 pointer-events-auto"
:image="image"
+2 -6
View File
@@ -4,7 +4,7 @@ import { ref, computed } from 'vue'
import { getBackgroundImage, IMAGE_PATHS, getStaticImage } from '@/utils'
import { ImgButton } from '@/components/Button'
import WorkSideSwitcher from './components/WorkSideSwitcher.vue'
import { GuideSteps } from '@/components/Guide'
import { GuideSteps, type GuideStep } from '@/components/Guide'
import { useRouter } from 'vue-router'
import { useScale } from '@/composables/useScale'
import { ImagePreview } from '@/components'
@@ -66,11 +66,7 @@ const currentHighlight = computed(() =>
stepIndex.value === 0 ? '.img-switch-item--case' : '.work-border'
)
interface SimpleStep {
id: string
content: string
}
const handleStepChange = (_step: SimpleStep | null, index: number) => {
const handleStepChange = (_step: GuideStep | null, index: number) => {
stepIndex.value = index
}