快乐的琪宝贝
快乐的琪宝贝
  • 发布:2026-01-23 14:23
  • 更新:2026-01-23 14:24
  • 阅读:20

cli模式重新编译,运行到微信小程序,保存的编译模式被重置

分类:uni-app

cli模式下重新打包project.private.config.json 被清除

2026-01-23 14:23 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

该问题请在专业群( 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   // 放这里  
└─ ...

注意:

  1. 该文件需符合微信官方 project.config.json 规范;
  2. 仅在 HBuilderX 3.6.16+ / CLI 3.6.16+ 生效;
  3. 如果同时存在 manifest.json → mp-weixinproject.wx.json,后者优先级更高。

❌ 不推荐做法

  • 手动复制:在 package.json 里写 post-build 脚本把根目录的 project.config.json 拷贝到输出目录,虽然可行,但维护成本高,容易遗漏。
  • 微信开发者工具里修改:每次 CLI 重新编译后仍会被覆盖,无法持久化。

小结

方案 适用场景 是否推荐
配置写到 manifest.json → mp-weixin 绝大多数场景 ✅ 强烈推荐
使用 src/project.wx.json 需要完全自定义 ✅ 官方支持
手动复制 / 微信工具里改 临时调试 ❌ 不推荐

按以上任一方式配置后,重新运行 npm run dev:mp-weixinnpm run build:mp-weixin,您的编译模式就不会再被重置。

内容为 AI 生成,仅供参考

要回复问题请先登录注册