|
|
1 месяц назад | |
|---|---|---|
| src | 1 месяц назад | |
| tests | 1 месяц назад | |
| .gitignore | 1 месяц назад | |
| README.md | 1 месяц назад | |
| TEST_REPORT.md | 1 месяц назад | |
| index.html | 1 месяц назад | |
| package.json | 1 месяц назад | |
| playwright.config.ts | 1 месяц назад | |
| pnpm-lock.yaml | 1 месяц назад | |
| tsconfig.json | 1 месяц назад | |
| tsconfig.node.json | 1 месяц назад | |
| vite.config.ts | 1 месяц назад |
基于 Vue 3 + TypeScript + Vite 构建的自助终端前端演示应用。
# 安装依赖
pnpm install
# 启动开发服务器(默认 http://127.0.0.1:5173)
pnpm dev
# 生产构建
pnpm build
# 预览生产构建
pnpm preview
# 单元测试(Vitest)
pnpm test:unit
# E2E 测试(Playwright,需先安装浏览器)
npx playwright install chromium
pnpm test:e2e
# 全部测试
pnpm test
默认开启 Demo 模式(VITE_DEMO_MODE !== 'false'),无需后端即可体验完整挂号流程:
关闭 Demo 模式需配置环境变量 VITE_DEMO_MODE=false 并指定后端地址 VITE_API_BASE_URL。
| 类别 | 方案 |
|---|---|
| 框架 | Vue 3 (Composition API) |
| 语言 | TypeScript |
| 构建 | Vite 6 |
| 状态管理 | Pinia |
| 单元测试 | Vitest + @vue/test-utils |
| E2E 测试 | Playwright |
| 类型检查 | vue-tsc |
src/
├── api/ # SSE 解析器、API 客户端、类型定义、Demo 数据
├── cards/ # 6 种挂号卡片 + CardRenderer 路由
├── chat/ # 对话面板、输入框、消息气泡
├── demo/ # Demo 模式开关
├── layouts/ # AppShell 三栏布局、ContextPanel 状态机、医生形象
├── state/ # Pinia 全局状态 store
├── theme/ # 设计令牌 CSS 变量
├── assets/ # 静态资源
├── App.vue # 根组件
└── main.ts # 应用入口