一个基于 Vue3与Three.js等前端技术 开发的 3D 球体动态抽奖应用,适用于企业年会、团队活动等抽奖场景。该项目具有高度的可配置性与定制性,管理员可以灵活配置奖品信息、参与人员、界面主题、背景图片及背景音乐。



核心功能亮点
- 炫酷3D视觉体验:通过Three.js渲染动态旋转的3D球体,将中奖者姓名或奖品贴图于球面,极大地增强了抽奖环节的互动感与科技感。
- 全面的数据配置:支持自定义奖品(名称、数量、图片)、参与人员(名单、是否全员参与),所有配置数据采用本地持久化存储,关闭浏览器后不会丢失。
- 多媒体自定义:允许用户上传并播放自定义背景音乐,并可随时更换应用界面的背景图片。
- 高效的Excel操作:支持从Excel文件一键导入人员名单,抽奖结束后也可将中奖结果导出为Excel文件,便于数据管理与存档。
- 国际化(i18n)支持:界面支持多语言切换,满足不同地区团队的使用需求。
- 便捷的Docker容器化部署:项目提供Dockerfile,方便构建镜像并快速部署,实现环境一致性与运维简化。
本地开发与构建指南
-
安装依赖
使用 pnpm 或 npm 安装项目所需依赖。
pnpm install
# 或
npm install
-
启动开发服务器
运行以下命令启动本地开发环境,支持热重载。
pnpm dev
# 或
npm run dev
-
构建生产版本
执行构建命令,生成用于生产环境的静态文件。
pnpm build
# 或
npm run build
-
生成可直接运行的HTML文件
此打包模式会生成一个可在dist目录下直接双击index.html运行的版本,无需HTTP服务器。
pnpm build:file
# 或
npm run build:file
构建完成后,直接在dist文件夹中找到并打开index.html文件即可运行完整的抽奖应用。项目还内置了完善的国际化多语言支持,可在配置中轻松切换界面语言。
|