docs: 更新 package.json 和 readme.md 反映最新构建流程

This commit is contained in:
2026-05-11 10:18:47 +08:00
parent 3bff91e421
commit 79202c4542
2 changed files with 44 additions and 27 deletions

View File

@@ -1,9 +1,6 @@
{ {
"scripts": { "scripts": {
"mp-weixin": "node scripts/mp-weixin.patch.js", "mp-weixin": "node scripts/mp-weixin.patch.js"
"mp-weixin:patch": "node scripts/mp-weixin.patch.js --no-zip",
"mp-weixin:dev": "node scripts/mp-weixin.patch.js --mode development",
"mp-weixin:dev:patch": "node scripts/mp-weixin.patch.js --mode development --no-zip"
}, },
"devDependencies": { "devDependencies": {
"dart-sass": "^1.25.0", "dart-sass": "^1.25.0",

View File

@@ -40,22 +40,20 @@
1. 使用 HBuilderX 打开项目(不用改manifest.json的web,只有H5要改 ) 1. 使用 HBuilderX 打开项目(不用改manifest.json的web,只有H5要改 )
2. 选择菜单栏「发行」 → 「小程序-微信」→ 「发行」,等待构建完成 2. 选择菜单栏「发行」 → 「小程序-微信」→ 「发行」,等待构建完成
⚠️ **注意**:底部控制台弹出"请在微信小程序开发者工具中点击上传"后再执行下一步 ⚠️ **注意**:底部控制台弹出"请在微信小程序开发者工具中点击上传"后再执行下一步
3. 打开资源管理器→项目根目录,右键选择「在终端中打开」,执行命令: 3. 构建完成后,**自动执行**补丁脚本(拷贝 site.js / config 文件 + 生成 ZIP 包),无需手动操作
```bash
npm run mp-weixin
```
4. 找到项目根目录 `/unpackage/dist/build` 下生成的 mp-weixin 压缩包 4. 找到项目根目录 `/unpackage/dist/build` 下生成的 mp-weixin 压缩包
💡 **示例**:`mp-weixin-2026-01-23-1769152056146.zip` 💡 **示例**:`mp-weixin-2026-05-11-3bff91e.zip`
*压缩包文件名末尾为 Git 提交 ID*
*同时该目录下会生成未压缩的 `mp-weixin` 目录* *同时该目录下会生成未压缩的 `mp-weixin` 目录*
##### 4.1.1.3 【验证与重命名】 ##### 4.1.1.3 【验证与重命名】
1. 打开未压缩的 `mp-weixin` 目录,找到 `site.js` 文件,将文件内的 `uniacid` 值改为当前客户编号(如:2812)并保存 1. 打开未压缩的 `mp-weixin` 目录,找到 `site.js` 文件,将文件内的 `uniacid` 值改为当前客户编号(如:2812)并保存
2. 打开微信开发者工具,导入「mp-weixin」目录,点击「编译」,在开发者工具控制台验证有无报错,以及能否返回对应客户的业务数据 2. 打开微信开发者工具,导入「mp-weixin」目录,点击「编译」,在开发者工具控制台验证有无报错,以及能否返回对应客户的业务数据
3. 确保无误后将生成的 mp-weixin 压缩包重命名 3. 确保无误后将生成的 mp-weixin 压缩包重命名
- **定制化版**格式:`定制化-客户编号-域名-mp-weixin-当前日期-生成编号.zip` - **定制化版**格式:`定制化-客户编号-域名-mp-weixin-当前日期-Git提交ID.zip`
- **通用版**无需重命名 - **通用版**无需重命名
💡 **示例**:`custom-2812-xcx.aigc-quickapp.com-mp-weixin-2026-01-22-1769152056146.zip` 💡 **示例**:`custom-2812-xcx.aigc-quickapp.com-mp-weixin-2026-05-11-3bff91e.zip`
🚫 **禁止**:压缩包命名禁止包含 `/ \ : * ? " < > |` 等特殊字符 🚫 **禁止**:压缩包命名禁止包含 `/ \ : * ? " < > |` 等特殊字符
@@ -121,30 +119,52 @@ H5:打开自己的浏览器输入网址(https://5g.aigc-quickapp.com/hwappx/co
--- ---
## 5. 📝 构建脚本说明 ## 5. 📝 构建与版本信息
### 5.1 可用的 npm 脚本命令 ### 5.1 自动注入机制
生产构建时,`vue.config.js` 中的 `VersionInjectPlugin` 会自动执行以下操作:
| 操作 | 适用平台 | 说明 |
|------|---------|------|
| `__app_version` 全局变量注入 | 所有平台 | 构建产物的 `vendor.js`(小程序)或 `index.html`(H5)中自动内联版本数据 |
| 构建版本信息查看 | 所有平台 | 首页右下角连击 5 次弹出模态框显示 `commitId` 和 `buildTime` |
版本数据包含:
- **commitId**:当前构建的 Git 短提交 ID
- **buildTime**:构建时间
> **开发模式**:HMR 热更新时自动跳过重复注入,不影响开发体验。
### 5.2 可用的 npm 脚本命令
| 命令 | 说明 | | 命令 | 说明 |
|------|------| |------|------|
| `npm run mp-weixin` | 默认构建(production模式,包含ZIP文件) | | `npm run mp-weixin` | 拷贝 site.js + config 文件 + 创建 ZIP 压缩包(用于手动触发) |
| `npm run mp-weixin:patch` | 只打补丁(production模式,不创建ZIP文件) |
| `npm run mp-weixin:dev` | 开发模式构建(development模式,包含ZIP文件) |
| `npm run mp-weixin:dev:patch` | 只打补丁(development模式,不创建ZIP文件) |
### 5.2 构建脚本功能 > 生产构建时,ZIP 打包由构建插件自动触发,通常无需手动执行此命令。
- 复制 `project.config.json` 和 `project.private.config.json` 文件到构建目录 ### 5.3 构建后处理功能(mp-weixin.patch.js)
- 复制 `site.js` 文件到构建目录
- 在 `vendor.js` 文件开头追加 `import site from "../site.js";` 语句 - 复制 `project.config.json` 和 `project.private.config.json` 到构建目录
- 支持创建构建结果的 ZIP 压缩包 - 复制 `site.js` 到构建目录
- 创建 ZIP 压缩包(文件名包含 Git 提交 ID)
- 自动打开 ZIP 文件所在目录 - 自动打开 ZIP 文件所在目录
--- ---
## 6. 🔄 版本历史 ## 6. 🔄 版本历史
### 6.1 v1.3 ### 6.1 v1.5.1
- `VersionInjectPlugin`:webpack emit 钩子自动注入 `__app_version` 到所有平台产物
- 首页右下角连击 5 次显示构建版本信息(commitId + buildTime)
- `mp-weixin.patch.js` 精简为仅文件拷贝和 ZIP 打包
- 修复 `openWxWorkServiceChat` 方法中 fail 回调语法错误
- ZIP 文件名末尾使用 Git 提交 ID 替换时间戳
- 构建脚本幂等性修复,支持多次运行不产生重复注入
### 6.2 v1.3
- 修复微信小程序构建脚本,支持复制 `project.config.json` 和 `project.private.config.json` 文件 - 修复微信小程序构建脚本,支持复制 `project.config.json` 和 `project.private.config.json` 文件
- 增强构建脚本功能,添加命令行参数支持 - 增强构建脚本功能,添加命令行参数支持
- 在 `package.json` 中添加相关 npm 脚本命令 - 在 `package.json` 中添加相关 npm 脚本命令