该问题请在专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。
在 CLI 模式下,每次重新编译都会把 dist/build/mp-weixin/project.config.json 重新生成,因此您在项目根目录或微信开发者工具里对该文件做的任何改动都会被覆盖。
根本原因是:uni-app 在打包时不会把根目录的 project.config.json 原封不动拷贝过去,而是根据 manifest.json 中的 "mp-weixin" 节点重新生成一份。
✅ 官方推荐做法(一劳永逸)
把需要持久化的字段全部写到 manifest.json → mp-weixin 节点里,CLI 每次编译都会自动同步到 project.config.json,不会被重置。
// manifest.json
{
"mp-weixin": {
"appid": "wx1234567890abcdef",
"projectname": "my-uniapp",
"setting": {
"urlCheck": false,
"es6": true,
"enhance": true,
"minified": true,
"postcss": true
},
"cloudfunctionRoot": "cloudfunctions/",
"plugins": {
"myPlugin": {
"version": "1.0.0",
"provider": "wxidxxxxxxxxxxxxxxxx"
}
}
}
}
支持字段列表可参考官方文档:manifest.json › mp-weixin 配置
✅ 完全掌控文件(可选方案)
如果您确实需要完全自定义 project.config.json,可在 src 目录下新建 project.wx.json(文件名必须是这个)。
CLI 编译时会把它拷贝到 dist/build/mp-weixin/ 并改名为 project.config.json,从而跳过自动生成逻辑。
目录示例:
src/
├─ project.wx.json // 放这里
└─ ...
注意:
- 该文件需符合微信官方
project.config.json 规范;
- 仅在 HBuilderX 3.6.16+ / CLI 3.6.16+ 生效;
- 如果同时存在
manifest.json → mp-weixin 与 project.wx.json,后者优先级更高。
❌ 不推荐做法
- 手动复制:在
package.json 里写 post-build 脚本把根目录的 project.config.json 拷贝到输出目录,虽然可行,但维护成本高,容易遗漏。
- 微信开发者工具里修改:每次 CLI 重新编译后仍会被覆盖,无法持久化。
小结
| 方案 |
适用场景 |
是否推荐 |
配置写到 manifest.json → mp-weixin |
绝大多数场景 |
✅ 强烈推荐 |
使用 src/project.wx.json |
需要完全自定义 |
✅ 官方支持 |
| 手动复制 / 微信工具里改 |
临时调试 |
❌ 不推荐 |
按以上任一方式配置后,重新运行 npm run dev:mp-weixin 或 npm run build:mp-weixin,您的编译模式就不会再被重置。
1 个回复
Ask小助手 - Ask社区AI助手
在 CLI 模式下,每次重新编译都会把
dist/build/mp-weixin/project.config.json重新生成,因此您在项目根目录或微信开发者工具里对该文件做的任何改动都会被覆盖。根本原因是:uni-app 在打包时不会把根目录的
project.config.json原封不动拷贝过去,而是根据manifest.json中的"mp-weixin"节点重新生成一份。✅ 官方推荐做法(一劳永逸)
把需要持久化的字段全部写到
manifest.json → mp-weixin节点里,CLI 每次编译都会自动同步到project.config.json,不会被重置。支持字段列表可参考官方文档:manifest.json › mp-weixin 配置
✅ 完全掌控文件(可选方案)
如果您确实需要完全自定义
project.config.json,可在src目录下新建project.wx.json(文件名必须是这个)。CLI 编译时会把它拷贝到
dist/build/mp-weixin/并改名为project.config.json,从而跳过自动生成逻辑。目录示例:
❌ 不推荐做法
package.json里写 post-build 脚本把根目录的project.config.json拷贝到输出目录,虽然可行,但维护成本高,容易遗漏。小结
manifest.json → mp-weixinsrc/project.wx.json按以上任一方式配置后,重新运行
npm run dev:mp-weixin或npm run build:mp-weixin,您的编译模式就不会再被重置。要回复问题请先登录或注册
公告
更多>相关问题