fix: 进度条高亮部分高亮

This commit is contained in:
gaofeihang committed 2025-09-19 19:17:09 +08:00
1 parent ae83c4f523
commit 10e97670a5
11 files changed
+34 -19

No files matched your search

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

+19 -10
View File
@@ -24,8 +24,12 @@
:class="getStepStatus(index)" :class="getStepStatus(index)"
> >
<span class="step-text"> <span class="step-text">
<img :src="step.name" alt="" /> <img
<img :src="step.icon" alt="" /> :src="
props.currentPage === index ? steps[index].nameSelect : steps[index].nameselectNot
"
alt=""
/>
<img class="step-ellipsis" src="@/assets/images/midterm/进度装饰(未完成.png" alt="" /> <img class="step-ellipsis" src="@/assets/images/midterm/进度装饰(未完成.png" alt="" />
</span> </span>
</div> </div>
@@ -67,7 +71,11 @@ interface Props {
/** 当前步骤索引 (0-3) */ /** 当前步骤索引 (0-3) */
currentStep?: number currentStep?: number
} }
//
interface Props {
/** 当前步骤索引 (0-3) */
currentPage?: number
}
// 定义事件 // 定义事件
interface Emits { interface Emits {
/** 点击完成按钮时触发 */ /** 点击完成按钮时触发 */
@@ -75,7 +83,8 @@ interface Emits {
} }
const props = withDefaults(defineProps<Props>(), { const props = withDefaults(defineProps<Props>(), {
currentStep: 0 currentStep: 0,
currentPage: 0
}) })
const emit = defineEmits<Emits>() const emit = defineEmits<Emits>()
@@ -93,16 +102,16 @@ const handleComplete = () => {
// 步骤配置 // 步骤配置
const steps = [ const steps = [
{ {
name: '/src/assets/images/midterm/前期准备.png', nameSelect: '/src/assets/images/midterm/前期准备-选中.png',
icon: '/src/assets/images/midterm/准备图标.png' nameselectNot: '/src/assets/images/midterm/前期准备-未选中.png'
}, },
{ {
name: '/src/assets/images/midterm/中期拍摄.png', nameSelect: '/src/assets/images/midterm/中期拍摄-选中.png',
icon: '/src/assets/images/midterm/拍摄图标.png' nameselectNot: '/src/assets/images/midterm/中期拍摄-未选中.png'
}, },
{ {
name: '/src/assets/images/midterm/后期剪辑.png', nameSelect: '/src/assets/images/midterm/后期剪辑-选中.png',
icon: '/src/assets/images/midterm/剪辑图标.png' nameselectNot: '/src/assets/images/midterm/后期剪辑-未选中.png'
} }
] ]
+4 -2
View File
@@ -7,6 +7,7 @@ import { useRouter } from 'vue-router'
const router = useRouter() const router = useRouter()
const currentStep = ref(1) const currentStep = ref(1)
const currentPage = ref(2)
const highlightShow = ref(true) const highlightShow = ref(true)
const handleComplete = () => { const handleComplete = () => {
@@ -92,7 +93,7 @@ const navigateTo = (routeName: string) => {
</div> </div>
<!-- 遮罩层 --> <!-- 遮罩层 -->
<div class="Shadow" v-if="highlightShow"> <div class="Shadow">
<div> <div>
<img src="" alt="" /> <img src="" alt="" />
</div> </div>
@@ -109,11 +110,12 @@ const navigateTo = (routeName: string) => {
<img src="@/assets/images/midterm/叉.png" alt="" /> <img src="@/assets/images/midterm/叉.png" alt="" />
</div> </div>
<div v-if="highlightShow" class="absolute bottom-0 w-full bright"> <div class="absolute bottom-0 w-full bright">
<ProgressBar <ProgressBar
:current-step="currentStep" :current-step="currentStep"
@complete="handleComplete" @complete="handleComplete"
@step-change="handleStepChange" @step-change="handleStepChange"
:current-page="currentPage"
/> />
</div> </div>
</div> </div>
+3 -2
View File
@@ -34,7 +34,7 @@ const shooting = () => {
// 跳转实地取景 // 跳转实地取景
router.push({ name: 'shooting' }) router.push({ name: 'shooting' })
} }
const currentPage = ref(1)
const highlightShow = ref(true) const highlightShow = ref(true)
</script> </script>
@@ -113,9 +113,10 @@ const highlightShow = ref(true)
<!-- 引导任务 --> <!-- 引导任务 -->
<!-- <ImgButton class="absolute right-24 bottom-24" :image="IMAGE_PATHS.VLOG.TASK_PERSON" /> --> <!-- <ImgButton class="absolute right-24 bottom-24" :image="IMAGE_PATHS.VLOG.TASK_PERSON" /> -->
<div v-if="highlightShow" class="absolute bottom-0 w-full bright"> <div class="absolute bottom-0 w-full bright">
<ProgressBar <ProgressBar
:current-step="currentStep" :current-step="currentStep"
:current-page="currentPage"
@complete="handleComplete" @complete="handleComplete"
@step-change="handleStepChange" @step-change="handleStepChange"
/> />
+3 -1
View File
@@ -60,6 +60,7 @@ const StoryboardClick = (routeName: string) => {
// IMAGE_PATHS.VLOG.Storyboard // IMAGE_PATHS.VLOG.Storyboard
// IMAGE_PATHS.VLOG.SelectedStoryboard // IMAGE_PATHS.VLOG.SelectedStoryboard
} }
const currentPage = ref(0)
</script> </script>
<template> <template>
@@ -139,8 +140,8 @@ const StoryboardClick = (routeName: string) => {
<div class="absolute bottom-0 w-full"> <div class="absolute bottom-0 w-full">
<ProgressBar <ProgressBar
v-if="highlightShow"
:current-step="currentStep" :current-step="currentStep"
:current-page="currentPage"
@complete="handleComplete" @complete="handleComplete"
@step-change="handleStepChange" @step-change="handleStepChange"
/> />
@@ -157,6 +158,7 @@ const StoryboardClick = (routeName: string) => {
</GuideStepsItem> </GuideStepsItem>
</GuideSteps> </GuideSteps>
</div> </div>
<!-- 叉 -->
<div <div
v-if="highlightShow" v-if="highlightShow"
class="absolute right-0 top-0" class="absolute right-0 top-0"
+5 -4
View File
@@ -113,8 +113,8 @@ const clickdoubao = () => {
position: absolute; position: absolute;
right: -90%; right: -90%;
top: 0; top: 0;
width: 100%; width: 50%;
height: 100%; height: 50%;
} }
.doubao .doubao-img { .doubao .doubao-img {
@@ -124,10 +124,11 @@ const clickdoubao = () => {
.biaoge-x { .biaoge-x {
position: absolute; position: absolute;
top: -15px; top: -20px;
right: 5px; right: 0px;
width: 70px; width: 70px;
cursor: pointer; cursor: pointer;
z-index: 9999999;
} }
.writing-title { .writing-title {