first commit
This commit is contained in:
commit
db5762abd4
687 files changed
+171307
No files matched your search
@@ -0,0 +1,72 @@
|
||||
# crashwork-console 完整前端工程(源码重建版)
|
||||
|
||||
这是根据当前 `20261025-kky-traffic-display` 发布包重建的独立工程,不是原始源码的逐字恢复。
|
||||
覆盖 52 个页面、104 个业务组件、4 套布局,包含现有图片、字体和样式。开发、构建和运行均不依赖旧发布目录。
|
||||
这里交付的是整个会员中心前端,不是仅含四个改写文件的示例。已只读核对服务器当前发布版本;
|
||||
模块元数据及其 735 个构建资源与重建依据一致。范围、证据与边界见 [完整项目交接说明](docs/project-completeness.md)。
|
||||
|
||||
原工程的模板、注释和局部变量名已在编译时丢失。多数页面恢复为可编辑的 Vue 单文件组件及渲染函数,
|
||||
部分局部变量仍为短名;请求/会话核心、应用入口、鉴权、主题和图表集成已重新编写。
|
||||
第二轮已将登录页、旧平台登录入口、SSH 密钥页和公共认证布局改为手写 `<script setup>` 与 `<template>`,
|
||||
使用业务命名,保留原接口及样式契约;这四个文件合计净减少 863 行,未增加依赖。
|
||||
这不是“所有业务均已重新设计并完成线上验收”的声明。具体验证与限制见 [验收报告](docs/validation.md)。
|
||||
|
||||
## 开发
|
||||
|
||||
需要 Node.js 22.12+ 与 npm,建议在团队中统一 Node 版本。
|
||||
|
||||
```sh
|
||||
npm ci
|
||||
cp .env.example .env
|
||||
npm run dev
|
||||
```
|
||||
|
||||
在 `.env` 设置 `NUXT_PUBLIC_API_BASE` 为后端 origin,例如 `http://127.0.0.1:8080`。
|
||||
不要附加 `/console/v1`;代码会自动追加。空值表示同源,开发或部署的反向代理必须另行转发该路径。
|
||||
图形验证码的 `/captcha/` 和远控的 `/remote-console/sessions`(包括 WebSocket)仍走前端同源,
|
||||
必须另外配置对应后端/网关的反向代理;只设置 API origin 不会自动转发这两类请求。
|
||||
前端不会替你启动后端服务、短信、验证码、支付渠道或 VNC 网关。
|
||||
|
||||
## 构建与验证
|
||||
|
||||
```sh
|
||||
npm run check
|
||||
npm run build
|
||||
npm test
|
||||
```
|
||||
|
||||
浏览器测试自动启动本地模拟接口与真实构建服务,并禁止访问外网。默认使用 macOS 已安装的 Chrome;
|
||||
其他环境请设置 `CHROME_PATH=/absolute/path/to/chrome`。详细说明见 [测试说明](tests/README.md)。
|
||||
当前离线验收为 21 项,包含短信配置与倒计时、SSH 增改删/末页恢复和旧入口失败后重试。
|
||||
|
||||
构建结果位于本工程的 `.output/`,不是仓库根目录的 `.output`。
|
||||
|
||||
```sh
|
||||
NUXT_PUBLIC_API_BASE=http://127.0.0.1:8080 HOST=127.0.0.1 PORT=3000 npm run preview
|
||||
```
|
||||
|
||||
## 源码结构
|
||||
|
||||
- `app/pages`、`app/layouts`、`app/components`:页面、布局和业务组件。
|
||||
- `app/lib/auth.js`:会话、接口协议、请求截止时间、购买前置校验及列表缓存。
|
||||
- `app/middleware/auth.global.js`:公开路由与鉴权、旧平台登录入口。
|
||||
- `app/plugins`:UI、站点初始化、跨标签页会话同步。
|
||||
- `app/config`:中文文案及 MIT 主题配置;图标由本地服务提供。
|
||||
- `tests`:通过真实页面操作和 HTTP 边界验证的回归场景。
|
||||
- `docs/module-inventory.json`:重建范围与路由清单。
|
||||
- `scripts/reconstruct.mjs`:一次性导入过程的留档;不是构建步骤,拒绝覆盖已有源码。
|
||||
|
||||
维护源码后执行正常构建即可,不要重新运行导入器覆盖修复,也不要手工修改生成的哈希 JS 文件。
|
||||
导入器仅留档用于可信的自有发布产物,不是通用归档解包器;不要给它提供第三方元数据或不可信构建输入。
|
||||
Vue、Vue Router、PrimeVue、Pinia、ECharts、noVNC 等通过正式 npm 依赖引用,不携带旧框架副本。
|
||||
保留的 CryptoJS AES 参数属于现有后端登录协议,不能在前后端未协商时单独修改。
|
||||
|
||||
## 发给员工与发布
|
||||
|
||||
交付本目录的源码压缩包或 Git 分支即可。员工运行 `npm ci`,配置自己的后端 origin,然后开发和验证。
|
||||
不要发送 `.env`、登录凭证、数据库备份、`node_modules` 或 Git 历史;示例配置不包含秘密。
|
||||
依赖包及保留静态资产应遵守各自许可证和你方资产授权。
|
||||
|
||||
本次没有修改线上发布指向,也没有部署。上线前应先在测试环境连接真实后端验证商品配置、验证码、
|
||||
安全验证、账务、支付和 VNC 反代;现有根目录发布脚本不会自动改为构建这个新工程。
|
||||
确认通过后,再按团队的版本发布/回滚流程发布本工程 `.output`,不要直接覆盖正在服务的版本。
|
||||
Reference in new issue
Block a user