# FastAPI Admin · 前端工程(web) 基于 **Vue 3 + Vite + TypeScript + Element Plus** 的后台管理前端,与 FastAPI Admin 后端配套使用。状态管理为 **Pinia**,样式以 **Tailwind CSS 4** 与 **SCSS** 为主,接口请求使用 **Axios**。 --- ## 第一次运行(最快上手) ### 1. 环境准备 | 工具 | 版本要求 | |------|-----------| | Node.js | ≥ 20.19(见 `package.json` → `engines`) | | pnpm | ≥ 8.8,推荐 **pnpm 9**(与 `packageManager` 字段一致) | 未安装 pnpm 时可执行:`corepack enable && corepack prepare pnpm@9.15.3 --activate`(版本可按项目 `packageManager` 调整)。 ### 2. 安装依赖并启动 在 **仓库根目录** 下进入本工程(路径以你的克隆位置为准): ```bash cd frontend/web pnpm install pnpm dev ``` 终端会打印本地访问地址;默认开发端口由 **`.env`** 中的 **`VITE_PORT`** 决定(当前模板为 **5180**)。浏览器打开提示的 `http://localhost:端口/` 即可。 ### 3. 环境变量(必看) 本项目使用 **Vite 环境文件**: - **`.env`**:各环境共享(端口、`VITE_APP_BASE_API`、权限模式等)。 - **`.env.development`**:开发模式覆盖项(后端地址、标题等)。 - 修改任一 env 后需 **重启** `pnpm dev`。 若仓库内没有现成的 `.env`,可复制示例文件再按需改名: ```bash cp .env.example .env # 若有需要,再单独创建 .env.development(可参考示例下半段注释) ``` 常用变量说明见下文 **[环境变量一览](#环境变量一览)**。 ### 4. 与后端联调 1. 先启动 **FastAPI Admin 后端**,监听地址与 **`.env.development`** 里 **`VITE_API_BASE_URL`** 一致(模板默认为 **`http://127.0.0.1:8001`**)。 2. 前端开发时,浏览器请求发往当前页面同源路径,由 **Vite `server.proxy`** 把 **`VITE_APP_BASE_API`**(如 `/api/v1`)转发到上述后端。 3. 若页面提示「连接被拒绝」,检查后端是否启动、端口是否一致,或把 **`VITE_API_BASE_URL`** 改成你的实际后端地址。 ### 5. 登录与权限 登录页与 Token 逻辑由项目内置 **`utils/http`**、**`utils/auth`** 与路由守卫配合实现。具体账号由 **后端初始化数据或管理员创建**,请参阅后端文档。 --- ## 常见问题(排查) | 现象 | 建议 | |------|------| | `ECONNREFUSED` / 网络错误 | 后端未启动或 **`VITE_API_BASE_URL`** 端口错误 | | 接口 401 / 频繁跳转登录 | Token 失效或未登录;清除站点本地存储后重新登录 | | 修改 `.env` 不生效 | 必须 **重启** `pnpm dev` | | 依赖异常、热更新怪异 | 尝试 **`pnpm clean:cache`** 后再 **`pnpm dev`**;仍不行可 **`pnpm dev:force`** | | 类型报错 | 运行 **`pnpm type-check`**;自动生成类型见 `src/types/import/`(勿手改自动生成的 d.ts) | --- ## 技术栈 | 类别 | 选型 | |------|------| | 框架 | Vue 3(Composition API / `