d***@junrunrenli.com
d***@junrunrenli.com
  • 发布:2024-07-15 19:19
  • 更新:2024-12-12 19:40
  • 阅读:602

【报Bug】hbx制作的wgt包缺失文件

分类:HBuilderX

产品分类: HbuilderX

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win10

HBuilderX版本号: 4.23

手机系统: Android

手机系统版本号: Android 13

手机厂商: 小米

手机机型: 14pro

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: CLI

CLI版本号: 4.22

操作步骤:

使用cli制作热更新包
安装后一键登录不可用

预期结果:

使用cli制作热更新包
一键登录可用

实际结果:

一键登录不可用

bug描述:

问题来源
项目是用cli创建的,但是使用了一键登录功能,依赖云函数,只能使用云打包
cli版本号:2.0.2-alpha-4020220240624001

  • 由于线上问题,想要热更新,使用了hbx制作热更新包,版本号4.22.2024062415-alpha,线上安装后白屏
  • 翻阅文档后发现可以使用cli build后制作wgt包,线上安装后正常,但是用户陆续反馈一键登录无法使用
  • 排查后发现使用cli 制作的热更新包更新成功后导致一键登录都无法用了

更新

  • 最终发现hbx制作的wgt包缺失文件
  • hbx调用项目cli制作wgt文件缺失
2024-07-15 19:19 负责人:BFC 分享
已邀请:
d***@junrunrenli.com

d***@junrunrenli.com (作者)

有人遇到这种情况吗?

xzh

xzh

一键登录功能是原生模块,原生模块更新要整包更新才行,wgt包热更新只能更新页面UI

  • d***@junrunrenli.com (作者)

    线上已经有一键登录的功能了,更新的就是ui

    2024-07-16 11:37

d***@junrunrenli.com

d***@junrunrenli.com (作者)

线上已经是有一键登录功能的,热更新只是修复界面的展示错误,没有涉及原生模块

d***@junrunrenli.com

d***@junrunrenli.com (作者)

没人了吗?

d***@junrunrenli.com

d***@junrunrenli.com (作者)

没人了吗?

DCloud_heavensoft

DCloud_heavensoft

我估计不是一键登陆的事情,是调用一键登陆之前的代码有异常。
cli版本和runtime版本应该匹配才能正常运行,不匹配会有告警。
你需要看下runtime的版本,如果runtime版本过老,就需要测好全部功能正常才能使用wgt。

  • d***@junrunrenli.com (作者)

    线上的打包时用的cli是2.0.2-alpha-4020220240624001,使用cli build后改后缀制作wgt的版本使用的也是2.0.2-alpha-4020220240624001,这样也会版本不匹配?

    2024-07-18 10:31

d***@junrunrenli.com

d***@junrunrenli.com (作者)

搞半天是因为云函数的问题,使用了云函数的项目就不能用cli构建wgt包了,用hbx还会制作的wgt包还会白屏,坑太多了

d***@junrunrenli.com

d***@junrunrenli.com (作者)

怎么样让hbx制作wgt包使用项目的cli?

d***@junrunrenli.com

d***@junrunrenli.com (作者)

  • 重新升级hbx到4.23.2024070309-alpha,查看hbx安装文件中plugins\uniapp-cli下的package.json,hbx用的版本是2.0.2-alpha-4020320240628001
  • 把项目的cli也升级到相同版本
  • 使用hbx制作wgt包
  • 测试热更新包,还是白屏,报错见截图
  • d***@junrunrenli.com (作者)

    基座版本也是重新打包的

    2024-07-18 19:22

  • d***@junrunrenli.com (作者)

    uniCompileVersion和uniRuntimeVersion都是4.23

    2024-07-18 19:23

  • d***@junrunrenli.com (作者)

    使用cli制作的wgt包除了涉及云函数的功能其他完全没问题

    2024-07-18 19:34

d***@junrunrenli.com

d***@junrunrenli.com (作者)

有没有人

d***@junrunrenli.com

d***@junrunrenli.com (作者)

  • 解压hbx制作的wgt包和cli制作的wgt包对比,hbx制作的包少了很多文件,只有3M左右,而cli制作的wgt有5M左右
  • 看到hbx制作的wgt包没有app-view文件,尝试把cli制作的wgt包的app-view.js放到hbx制作的包里
  • 压缩,改后缀之后再次测试,竟然成功了,涉及云函数的功能也能正常使用

官方谁来解释下,我真的懵逼了,这都是什么机制

d***@junrunrenli.com

d***@junrunrenli.com (作者)

  • 找了一个之前用hbx制作的wgt包,里面是有app-view.js文件的,且文件没有缺失
d***@junrunrenli.com

d***@junrunrenli.com (作者)

dcloud公司不加班的吗?

d***@junrunrenli.com

d***@junrunrenli.com (作者)

sad

d***@junrunrenli.com

d***@junrunrenli.com (作者)

有没有人

d***@junrunrenli.com

d***@junrunrenli.com (作者)

有没有人

d***@junrunrenli.com

d***@junrunrenli.com (作者)

有没有人

d***@junrunrenli.com

d***@junrunrenli.com (作者)

有没有官方的人看一下

DCloud_UNI_LXH

DCloud_UNI_LXH

使用 4.23 打 wgt 包文件正常无缺失, 可以升级 cli 试试看。你之前打出来不缺失文件的是用的什么版本?

  • d***@junrunrenli.com (作者)

    cli制作wgt包没问题,是hbx制作的wgt包缺失文件

    2024-07-22 11:08

  • d***@junrunrenli.com (作者)

    我这边项目由于用了云函数,只能用hbx打包,现在我只能用hbx和cli都打包,然后把cli打的包里面的app-view.js放到hbx的包里才能正常热更新

    2024-07-22 11:10

  • DCloud_UNI_LXH

    回复 d***@junrunrenli.com: hbx 4.23 vue2 打 wgt 包也没有问题,文件不确实,刚测试过

    2024-07-22 11:14

  • d***@junrunrenli.com (作者)

    回复 DCloud_UNI_LXH: 刚又试了下,还是没有app-view.js

    2024-07-22 11:16

  • d***@junrunrenli.com (作者)

    回复 DCloud_UNI_LXH: 你的hbx能发我试试吗?

    2024-07-22 11:20

  • d***@junrunrenli.com (作者)

    之前hbx制作wgt正常的版本好像是4.19,记不太清了

    2024-07-22 11:26

  • DCloud_UNI_LXH

    回复 d***@junrunrenli.com: 我就是用最新版的正式版

    2024-07-22 11:39

  • d***@junrunrenli.com (作者)

    回复 DCloud_UNI_LXH: 4.23.2024070309-alpha你试试

    2024-07-22 11:45

d***@junrunrenli.com

d***@junrunrenli.com (作者)

hbx版本:4.23.2024070309-alpha

没有app-view.js

  • d***@junrunrenli.com (作者)

    编译的日志也没有,不知道哪里有问题

    2024-07-22 11:21

DCloud_UNI_LXH

DCloud_UNI_LXH

使用4.23.2024070309-alpha 打包的 wgt,测试没有问题。你可以把插件卸载重装试试看

  • d***@junrunrenli.com (作者)

    能否用Windows再试试?我重新下载4.23.2024070309-alpha还是不行

    2024-07-22 13:48

DCloud_UNI_LXH

DCloud_UNI_LXH

使用 windows 测试也没有问题,你可以新建一个默认模板打 wgt 试试看,是不是一样的结果

d***@junrunrenli.com

d***@junrunrenli.com (作者)

@DCloud_UNI_LXH

我找到差异了

  • 我的项目是cli创建的,用终端build后制作的wgt正常
  • 使用hbx制作wgt的时候,hbx调用的是我项目的cli,但是最终生成的wgt缺失文件
  • 我把我项目src导入hbx,使用hbx打包,hbx调用编译插件的cli,生成的文件正常

目前的问题就是为啥hbx调用项目的cli制作的wgt缺少文件

  • d***@junrunrenli.com (作者)

    使用同事的电脑尝试打包,也是一样,排除了电脑问题

    2024-07-22 17:24

d***@junrunrenli.com

d***@junrunrenli.com (作者)

@DCloud_UNI_LXH

从网盘下载历史版本的hbx,4.19打包也不行,最终回退到hbx-4.17的版本后打包制作的wgt才正常了

  • DCloud_UNI_LXH

    只要是 4.17 往后 hx 编译 cli 创建的项目打包 wgt, 就会丢失 app-view.js ?我看提交记录没有提交什么太多的东西,这个我们测试一下看看。感谢反馈

    2024-07-23 11:02

  • d***@junrunrenli.com (作者)

    回复 DCloud_UNI_LXH: 4.18没看,我是先降级到4.19,发现还是没有app-view.js,之后再降级到4.17才正常的

    2024-07-23 11:22

  • d***@junrunrenli.com (作者)

    回复 DCloud_UNI_LXH: 有结论麻烦踢我一下

    2024-07-23 17:24

  • d***@junrunrenli.com (作者)

    回复 DCloud_UNI_LXH: 请问下有没有结论,我现在能用cli生成的app-view.js放到hbx生成的包里面制作热更新包吗?

    2024-07-24 11:06

  • DCloud_UNI_LXH

    回复 d***@junrunrenli.com: 使用 4.24,新建默认模板,安装依赖后直接编译是没有问题的,具体看我上面发的图片。你可以新建一个模板试试看,是否根项目有关系。使用 cli 生成的 app-view.js ,只要 cli 和 hbx 的版本一致就可以,hbx 的版本在 hx 根目录/plugins/uniapp-cli/package.json 可以查看

    2024-07-25 11:13

d***@junrunrenli.com

d***@junrunrenli.com (作者)

官方有人在看吗?

d***@junrunrenli.com

d***@junrunrenli.com (作者)

官方在看吗?

BeforeMount

BeforeMount

我是mac 我看了我之前的wgt和现在的 都没有app-view.js这个文件呢

要回复问题请先登录注册