uni-app "optimization": { "subPackages": true } 设置了无效
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 |
有人遇到同样的问题吗?急!!!谢谢
我也遇到了 作者解决了吗!!急!!
我也遇到这个问题了
我也遇到了,不论是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-weixin
或npm 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"
}
}
]
}
]
}