数据结构优化

This commit is contained in:
李琦
2026-01-19 21:19:35 +08:00
parent 7e918cedd4
commit 356dcf4fa5
14 changed files with 557 additions and 45 deletions

View File

@@ -119,7 +119,7 @@ const latestWork = ref<Work>({
desc: '',
techStack: [],
gallery: [],
links: { live: '#' },
links: {},
next: ''
})

View File

@@ -67,15 +67,48 @@
</div>
</div>
</div>
<div class="mt-12">
<div class="mt-12 space-y-4">
<!-- Live Link -->
<a
v-if="work.links.live"
id="work-link-live"
:href="work.links.live"
target="_blank"
class="group flex items-center justify-between w-full py-6 border-t border-white/10 hover:bg-white/5 transition-colors"
class="group flex items-center justify-between w-full py-4 border-t border-white/10 hover:bg-white/5 transition-colors"
>
<span class="font-serif text-2xl italic text-white group-hover:text-art-accent transition-colors">访问线上项目</span>
<i data-lucide="arrow-up-right" class="w-6 h-6 text-white group-hover:rotate-45 transition-transform"></i>
<span class="font-serif text-xl italic text-white group-hover:text-art-accent transition-colors flex items-center gap-3">
<i data-lucide="globe" class="w-5 h-5"></i>
访问线上项目
</span>
<i data-lucide="arrow-up-right" class="w-5 h-5 text-white group-hover:rotate-45 transition-transform"></i>
</a>
<!-- Demo Link -->
<a
v-if="work.links.demo"
id="work-link-demo"
:href="work.links.demo"
target="_blank"
class="group flex items-center justify-between w-full py-4 border-t border-white/10 hover:bg-white/5 transition-colors"
>
<span class="font-serif text-xl italic text-white group-hover:text-art-accent transition-colors flex items-center gap-3">
<i data-lucide="play-circle" class="w-5 h-5"></i>
查看演示
</span>
<i data-lucide="arrow-up-right" class="w-5 h-5 text-white group-hover:rotate-45 transition-transform"></i>
</a>
<!-- GitHub Link -->
<a
v-if="work.links.github"
id="work-link-github"
:href="work.links.github"
target="_blank"
class="group flex items-center justify-between w-full py-4 border-t border-white/10 hover:bg-white/5 transition-colors"
>
<span class="font-serif text-xl italic text-white group-hover:text-art-accent transition-colors flex items-center gap-3">
<i data-lucide="github" class="w-5 h-5"></i>
查看源码
</span>
<i data-lucide="arrow-up-right" class="w-5 h-5 text-white group-hover:rotate-45 transition-transform"></i>
</a>
</div>
</div>
@@ -133,7 +166,7 @@ const work = ref<Work>({
desc: '<p>加载中...</p>',
techStack: [],
gallery: [],
links: { live: '#' },
links: {},
next: ''
})

View File

@@ -68,6 +68,39 @@
{{ stack }}
</span>
</div>
<!-- 链接按钮 -->
<div v-if="work.links && (work.links.live || work.links.github || work.links.demo)" class="flex flex-wrap gap-3" :class="[index % 2 === 1 ? 'md:justify-end' : '']">
<a
v-if="work.links.live"
:href="work.links.live"
target="_blank"
@click.stop
class="inline-flex items-center gap-2 px-4 py-2 border border-white/10 rounded-full text-xs text-white/70 hover:border-art-accent hover:text-art-accent transition-all"
>
<i data-lucide="globe" class="w-3 h-3"></i>
线上项目
</a>
<a
v-if="work.links.demo"
:href="work.links.demo"
target="_blank"
@click.stop
class="inline-flex items-center gap-2 px-4 py-2 border border-white/10 rounded-full text-xs text-white/70 hover:border-art-accent hover:text-art-accent transition-all"
>
<i data-lucide="play-circle" class="w-3 h-3"></i>
演示
</a>
<a
v-if="work.links.github"
:href="work.links.github"
target="_blank"
@click.stop
class="inline-flex items-center gap-2 px-4 py-2 border border-white/10 rounded-full text-xs text-white/70 hover:border-art-accent hover:text-art-accent transition-all"
>
<i data-lucide="github" class="w-3 h-3"></i>
源码
</a>
</div>
<!-- 查看详情按钮 -->
<div class="pt-4" :class="[index % 2 === 1 ? 'flex md:justify-end' : '']">
<span class="inline-flex items-center gap-2 text-sm font-medium text-white border-b border-transparent hover:border-art-accent hover:text-art-accent transition-all">