9***@qq.com
9***@qq.com
  • 发布:2023-12-15 14:51
  • 更新:2024-01-27 19:53
  • 阅读:420

【报Bug】HBuilderX vue3.0 编译支付宝小程序存在bug

分类:HBuilderX

产品分类: HbuilderX

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 14.1 (23B74)

HBuilderX版本号: 3.98

操作步骤:

"运行"-“运行到小程序模拟器”-“支付宝小程序开发工具”

预期结果:

编译运行正常

实际结果:

不能正常运行,需要手动修改 vendor.js的getCreateApp方法才正常

bug描述:

HBuilderX vue3.0 编译支付宝小程序存在bug,支付宝开发工具下没看到报错信息,但模拟器一片空白。真机运行,会看到以下错误信息

TypeError: Cannot read property 'onLaunch' of undefined  
    at e.pushStack (appx/af-appx.worker.min.js:6:528879)  
    at e.pushStack (appx/af-appx.worker.min.js:6:517748)  
    at e.performPostNavigation (appx/af-appx.worker.min.js:6:536698)  
    at e.onPageCreate (appx/af-appx.worker.min.js:6:530404)  
    at e.onPageCreate (appx/af-appx.worker.min.js:6:518178)  
    at e.createInstance (appx/af-appx.worker.min.js:6:506006)  
    at appx/af-appx.worker.min.js:6:1185261  
    at appx/af-appx.worker.min.js:6:1185065  
    at s (appx/af-appx.worker.min.js:6:1185069)  
    at appx/af-appx.worker.min.js:6:1185577  

TypeError: Cannot read property 'onResume' of undefined  
    at e.onAppResume (appx/af-appx.worker.min.js:6:533606)  
    at e.onAppResume (appx/af-appx.worker.min.js:6:518274)  
    at e.invokeEvent (appx/af-appx.worker.min.js:6:279766)  
    at e.dispatchEvent (appx/af-appx.worker.min.js:6:63820)  
    at t (appx/af-appx.worker.min.js:6:945753)  
    at bu (appx/af-appx.worker.min.js:6:215189)  
    at t.dispatchEvent (2021004109638679.hybrid.alipay-eco.com/index.worker.js:3:209842)  
    at Object.i [as fn] (2021004109638679.hybrid.alipay-eco.com/index.worker.js:3:208724)  
    at d (appx/v8.worker.js:1:911)  
    at g (appx/v8.worker.js:1:2469)

需要自己手动修改 vendor.js的getCreateApp方法可以修改为

function getCreateApp() {  
  const method = "createApp";  
  if (typeof my !== "undefined") {  
    return my[method];  
  }else if (typeof global !== "undefined") {  
    return global[method];  
  }  
}

function getCreateApp() {  
  const method = "createApp";  
  if (typeof global !== "undefined" && typeof global[method] !== "undefined") {  
    return global[method];  
  }else if (typeof my !== "undefined" && typeof my[method] !== "undefined") {  
    return my[method];  
  }  
}
2023-12-15 14:51 负责人:无 分享
已邀请:

最佳回复

DCloud

DCloud

HBuilderX 4.0.2024012711-alpha 已修复。

YUANRJ

YUANRJ

提供下测试工程吧

  • 9***@qq.com (作者)

    支付宝开发工具新版本支持 global 和 globalThis,需要设置 "globalObjectMode": "enable"

    2023-12-15 16:20

9***@qq.com

9***@qq.com (作者)

可以直接修改/Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli-vite/node_modules/@dcloudio/uni-mp-vue/dist/vue.runtime.esm.js/Applications/HBuilderX.app/Contents/HBuilderX/update/backup/diff/uniapp-cli-vite/backup/node_modules/@dcloudio/uni-mp-vue/dist/vue.runtime.esm.js 的 getCreateApp 方法,这样就不需要每次编译后修改 vendor.js 文件

YUANRJ

YUANRJ

感谢反馈,后续会修复。

要回复问题请先登录注册