uni-app运行到微信小程序时丢失之前保存的编译模式

发布于 1周前 作者 caililin 来自 Uni-App

uni-app运行到微信小程序时丢失之前保存的编译模式
保存编译模式,重新运行就会丢失。

图片

项目信息 详情
开发环境 HBuilderX
HBuilderX版本 4.44
微信小程序版本 1.06.2412040

5 回复

此问题已在issues系统有重复记录。会在即将发布的4.45解决


修改完模式,观察下哪个文件改动了,应该是 project.private.config.json 这个项目根目录放一个相同文件,内容复制过去。
或者你写个 vite 插件,在 buildEnd 之后创建上述 json,问一下 ai 就行

果然是新版本的HBX软件的问题, 更新后,就出现了这个丢失编译模式的问题,烦死了.很多页面记录都在里面,现在每天都被清空. 测试起来很烦… 官方赶紧修复啊…

HBX 4.44版本, 会把project.private.config.json 这个文件删掉…我已经回退到4.36版本了.并且跳过4.44版本, 等下个版本 如果修复了再升级…可惜我这个项目 一直以来积累的 模式…又要全部重头来过了.

在uni-app中,编译模式(如开发模式、生产模式等)的设置对于应用的开发和调试至关重要。如果在将uni-app项目运行到微信小程序时丢失了之前保存的编译模式,可能是由于配置文件未正确设置或在构建过程中未保留相关配置。以下是一些可能的解决方案和相关的代码案例,帮助你确保编译模式在构建和运行时保持一致。

1. 检查manifest.json文件

确保在manifest.json文件中正确设置了微信小程序的编译配置。特别是mp-weixin部分,这里可以指定一些特定的编译选项。

{
  "mp-weixin": {
    "appid": "your-app-id",
    "setting": {
      "urlCheck": false,
      "es6": true,
      "enhance": true,
      "debug": true  // 这里可以设置为true以启用开发模式,生产环境请设置为false
    }
  }
}

2. 使用vue.config.js文件配置编译模式

如果你使用的是Vue CLI进行构建,可以在vue.config.js文件中设置编译模式。虽然这主要针对Vue项目,但uni-app也支持类似的配置。

module.exports = {
  publicPath: process.env.NODE_ENV === 'production' ? './' : '/',
  configureWebpack: config => {
    if (process.env.NODE_ENV === 'production') {
      // 生产环境配置
      config.mode = 'production';
    } else {
      // 开发环境配置
      config.mode = 'development';
      config.devtool = 'source-map';
    }
  }
};

3. 环境变量控制

通过环境变量来控制编译模式,可以在package.json中定义不同的脚本命令。

"scripts": {
  "dev:weapp": "cross-env NODE_ENV=development uni-app-cli serve --platform mp-weixin",
  "build:weapp": "cross-env NODE_ENV=production uni-app-cli build --platform mp-weixin"
}

4. 确保构建脚本未覆盖配置

检查你的构建脚本或CI/CD配置,确保它们没有覆盖你在manifest.jsonvue.config.js中设置的编译模式。

5. 清理缓存并重建

有时候,清理项目的缓存和依赖,然后重新构建可以解决一些奇怪的配置问题。

# 清理npm缓存
npm cache clean --force

# 删除node_modules和lock文件
rm -rf node_modules package-lock.json

# 重新安装依赖
npm install

# 重新构建项目
npm run build:weapp

通过以上步骤,你应该能够确保uni-app项目在运行到微信小程序时,能够保留之前设置的编译模式。如果问题仍然存在,建议检查uni-app和微信小程序的官方文档,以获取最新的配置信息和可能的解决方案。

回到顶部