uni-app "optimization": { "subPackages": true } 设置了无效

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

uni-app “optimization”: { “subPackages”: true } 设置了无效

操作步骤:

如上描述和附件图片

预期结果:

分包中应该单独有vendor.js文件,而不是全打在主包中。

实际结果:

分包组件js全打在主包中

bug描述:

uniapp开发微信小程序,manifest.json中“mp-weixin”节点下已经设置了"optimization": { “subPackages”: true },但是编译到微信小程序时,只有主包中才有vendor.js文件,分包中没有,导致主包过大。不知是否还需要加其他的配置?谢谢,麻烦了。

信息类别 详细信息
产品分类 uniapp/小程序/微信
PC开发环境操作系统 Windows
PC开发环境操作系统版本号 Windows 10 专业版
HBuilderX类型 正式
HBuilderX版本号 3.99
第三方开发者工具版本号 1.06.2312061
基础库版本号 3.3.3
项目创建方式 HBuilderX

Image Image Image


15 回复

有人遇到同样的问题吗?急!!!谢谢


我也遇到了 作者解决了吗!!急!!

我也遇到这个问题了

我也遇到了,不论是vite打包还是hbuilder打包都不行,有官方出来解决吗

我也遇到同样的问题,已配置了"optimization": {“subpackages”: true} ,但是仅在子包里引用的js,被封装到vendor.js里了。

我也有这个问题了

我也碰到这个问题,要怎么处理啊

可以看下我这个插件,开了个小广告,请不要介意https://ext.dcloud.net.cn/plugin?id=18199

有大佬解决了吗,遇到一样的问题

你好,node_modules里面的安装的包目前只会打包到 vender.js中, 如果需要,可以手动将node_modules中的包拿出来,放到项目里面引用使用

你好,我现在遇到的情况是,虽然设置了optimization节点,但是分包中写的页面、分包中写的组件js都会往主包的vender中塞,而不会在分包中生成自己的vender,是因为我在分包中使用了主包中的工具类(如请求封装类)导致的吗?

回复 4***@qq.com: 是的,独立分包中不能依赖主包和其他分包中的内容

有大佬解决了吗,遇到一样的问题

问题依旧还在,依旧没官方回答解决

uni-app 中,optimization 配置项用于优化项目的构建和打包过程。其中 subPackages 选项用于开启或关闭分包加载功能。如果你设置了 "subPackages": true 但发现无效,可能有以下几种原因:

1. 配置位置不正确

optimization 配置项应该放在 manifest.json 文件的 "mp-weixin""mp-alipay" 等平台配置中,而不是直接放在 manifest.json 的根目录下。正确的配置方式如下:

{
  "mp-weixin": {
    "optimization": {
      "subPackages": true
    }
  }
}

确保你是在正确的平台配置中设置了 subPackages

2. 项目未重新编译

修改 manifest.json 文件后,需要重新编译项目才能使配置生效。你可以通过以下步骤重新编译:

  • 在 HBuilderX 中,点击菜单栏的 运行 -> 运行到小程序模拟器运行到手机或模拟器
  • 或者使用命令行工具执行 npm run dev:mp-weixinnpm run build:mp-weixin 等命令。

3. 分包功能未正确使用

即使开启了 subPackages,你还需要在项目中正确配置分包。分包的配置需要在 pages.json 文件中进行,例如:

{
  "pages": [
    {
      "path": "pages/index/index",
      "style": {
        "navigationBarTitleText": "首页"
      }
    }
  ],
  "subPackages": [
    {
      "root": "packageA",
      "pages": [
        {
          "path": "page1",
          "style": {
            "navigationBarTitleText": "分包A页面1"
          }
        }
      ]
    }
  ]
}
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!