- 将原单页竞赛流程拆分为独立路由页面(首页、封面、规则、抽题、答题、图解、组别、队伍) - 新增 Pinia store 管理竞赛状态、计时器和音频控制 - 添加 SCSS 变量文件定义主题色 - 更新路由配置和类型定义以支持新页面结构 - 重构 QuestionRenderer 组件优化样式 - 添加图标依赖并更新国际化配置 - 移动图片资源到用户目录并清理旧文件
27 lines
822 B
Vue
27 lines
822 B
Vue
<script setup lang="ts">
|
|
import type { ActivityNode } from '../types'
|
|
|
|
defineProps<{ node: ActivityNode }>()
|
|
defineEmits(['back', 'draw'])
|
|
</script>
|
|
|
|
<template>
|
|
<div class="h-full w-full flex flex-col items-center pt-44">
|
|
<div class="mb-20 max-w-4xl text-center">
|
|
<div class="text-2xl text-gray-800 font-medium leading-relaxed tracking-wide">
|
|
{{ node.description }}
|
|
</div>
|
|
</div>
|
|
|
|
<!-- 抽题按钮 (大圆形) -->
|
|
<div class="group relative">
|
|
<button
|
|
class="h-64 w-64 flex flex-col items-center justify-center border-4 border-blue-400 rounded-full bg-gray-200/80 text-3xl text-gray-700 font-bold shadow-xl transition-all active:scale-95 hover:scale-105"
|
|
@click="$emit('draw')"
|
|
>
|
|
<span>抽题</span>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</template>
|