73 lines
2.8 KiB
Markdown
73 lines
2.8 KiB
Markdown
# 山峡化工 · 微信小程序(miniprogram)
|
||
|
||
基于 [uni-app](https://uniapp.dcloud.net.cn/) 的微信小程序工程,基础框架移植自叁强鲜配 `sqxp-wx`,已去除订单/配送等业务页面,保留可复用的基础设施,便于后续建设山峡业务。
|
||
|
||
## 技术栈
|
||
|
||
- uni-app(Vue 3 + Composition API)
|
||
- Pinia(用户态)+ Vuex(hello-uniapp 遗留壳)
|
||
- Vant Weapp(`wxcomponents`)
|
||
- uni-ui(`uni_modules`)
|
||
- RSA 登录加密(JSEncrypt)+ 请求封装(`utils/request.js`)
|
||
|
||
## 目录说明
|
||
|
||
| 路径 | 说明 |
|
||
|------|------|
|
||
| `pages/login/` | 登录、用户协议、隐私政策 |
|
||
| `pages/home/` | 占位首页(登录成功后跳转) |
|
||
| `config/` | API 基址、静态资源默认配置 |
|
||
| `stores/` | Pinia 用户 Store |
|
||
| `utils/` | 请求、RSA 登录、安全区、格式化等工具 |
|
||
| `components/` | 通用组件(安全区 Header、协议正文等) |
|
||
| `styles/` | 全局 SCSS 与 Token(对齐 `docs/miniprogram-ui-spec-sanqiang.md`) |
|
||
| `uni_modules/` | uni-app 官方/扩展组件 |
|
||
| `wxcomponents/` | Vant 小程序组件 |
|
||
|
||
## 本地开发
|
||
|
||
### 方式一:HBuilderX(推荐)
|
||
|
||
1. 安装 [HBuilderX App 开发版](https://www.dcloud.io/hbuilderx.html)
|
||
2. 用 HBuilderX 打开本目录 `miniprogram/`
|
||
3. 在 `manifest.json` → 微信小程序 中填写你的 **AppID**
|
||
4. 修改 `config/api.js` 中的 `DEV_BASE_URL` / `devBaseUrl`:
|
||
- 模拟器:`http://127.0.0.1:8000/api`
|
||
- 真机调试:改为电脑局域网 IP,如 `http://192.168.x.x:8000/api`
|
||
5. 确保 `backend/` 已启动(默认 `127.0.0.1:8000`)
|
||
6. 运行 → 运行到小程序模拟器 → 微信开发者工具
|
||
|
||
### 方式二:微信开发者工具
|
||
|
||
若已有编译产物,可导入 `unpackage/dist/dev/mp-weixin`(需先通过 HBuilderX 或 CLI 编译一次)。
|
||
|
||
## 接口约定
|
||
|
||
当前基础框架**复用 Web 管理端公共登录接口**(`backend/app/api/public.py`):
|
||
|
||
- `GET /api/web/auth/login-rsa-public-key`
|
||
- `POST /api/web/auth/login`
|
||
- `POST /api/web/auth/logout`
|
||
- `GET /api/web/auth/current-user`
|
||
|
||
后续若拆分小程序专用 `/api/mini/*` 路由,只需调整 `config/api.js` 中 `AUTH_API` 与 `stores/user.js` 调用路径。
|
||
|
||
## 发版前检查
|
||
|
||
```bash
|
||
cd miniprogram
|
||
npm run release:remind-api # 提醒核对 API 基址
|
||
npm run release:check-api # CI 严格模式:仍为本机地址则失败
|
||
```
|
||
|
||
## 视觉规范
|
||
|
||
UI Token 与页面骨架以仓库根目录 **`docs/miniprogram-ui-spec-sanqiang.md`** 及 `mobile-ui/sanqiang-*.html` Demo 为准。主品牌色:`#0a9f6d`。
|
||
|
||
## 后续建设建议
|
||
|
||
1. 在 `pages/` 下按业务域新增页面(如客户端、供应商端等)
|
||
2. 在 `pages.json` 注册路由与 tabBar
|
||
3. 在 `api/` 目录补充业务接口模块
|
||
4. 后端新增 `/api/mini/*` 时同步更新 `config/api.js`
|