Files
shanxia2.0/miniprogram/README.md
T
2026-07-11 17:15:17 +08:00

73 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 山峡化工 · 微信小程序(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`