ab4f40ba5d
- 克隆 art-design-pro v3.0.2(GitHub depth1),rm .git,pnpm clean:dev 精简演示页(92 文件) - .env.development/.env.production 均设 VITE_API_URL=/api,代理目标 127.0.0.1:8000(移除 Apifox Mock) - http 封装信封适配:code===200 解包 data;msg/message 字段兼容(拦截器/error/类型) - /api/admin/auth/token 登录适配(access->Bearer token, refresh->refreshToken);/api/admin/auth/me 映射 UserInfo(userName/roles/is_admin) - 登录页演示账号替换为真实 admin;logOut 按路由名判登录页修复 redirect 嵌套 - 根 .gitignore 补 !admin/.env(模板公共 env 非密钥,需入库) - 验证:Playwright 全链路(错误密码 401 留登页/正确登录进工作台/登出/受保护路由重定向/redirect 回跳)+ pnpm build(vue-tsc 通过,产物无 mock 域名) Co-Authored-By: Claude Code <noreply@anthropic.com>
29 lines
832 B
JSON
29 lines
832 B
JSON
{
|
|
"compilerOptions": {
|
|
"target": "esnext",
|
|
"module": "esnext",
|
|
"moduleResolution": "node",
|
|
"strict": true,
|
|
"jsx": "preserve",
|
|
"sourceMap": true,
|
|
"resolveJsonModule": true,
|
|
"esModuleInterop": true,
|
|
"lib": ["esnext", "dom"],
|
|
"types": ["vite/client", "node", "element-plus/global"],
|
|
"skipLibCheck": true,
|
|
"baseUrl": ".",
|
|
"paths": {
|
|
"@/*": ["src/*"],
|
|
"@views/*": ["src/views/*"],
|
|
"@imgs/*": ["src/assets/images/*"],
|
|
"@icons/*": ["src/assets/icons/*"],
|
|
"@utils/*": ["src/utils/*"],
|
|
"@stores/*": ["src/store/*"],
|
|
"@plugins/*": ["src/plugins/*"],
|
|
"@styles/*": ["src/assets/styles/*"]
|
|
}
|
|
},
|
|
"include": ["src/**/*", "src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"],
|
|
"exclude": ["node_modules", "dist", "**/*.js"]
|
|
}
|