Meiwah
Meiwah
  • 发布:2022-05-22 17:32
  • 更新:2022-06-02 15:31
  • 阅读:735

【报Bug】使用 vue-cli 命令行创建的 H5 项目无法使用 async/await

分类:uni-app

产品分类: uniapp/H5

PC开发环境操作系统: Windows

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

浏览器平台: Chrome

浏览器版本: 100.0.4896.127(正式版本) (64 位)

项目创建方式: CLI

CLI版本号: 4.5.17

示例代码:

in App.vue

export default {  
  onLaunch: function() {  
    console.log('App Launch')  
    this.asyncMethod()  
  },  
  onShow: function() {  
    console.log('App Show')  
  },  
  onHide: function() {  
    console.log('App Hide')  
  },  
  methods: {  
    async asyncMethod() {  
      await this.resolveAfter2Seconds('hello')  
      console.log('resolved')  
    },  
    resolveAfter2Seconds(x) {  
      return new Promise(resolve => {  
        setTimeout(() => {  
          resolve(x)  
        }, 2000)  
      })  
    }  
  }  
}

操作步骤:

使用 async/await 语句块即可复现

预期结果:

能够正常使用 async/await 语法

实际结果:

项目正常编译通过,但于浏览器运行时出错,无法使用 await async

bug描述:

[system] TypeError: Cannot set properties of undefined (setting 'default')  
    at _regeneratorRuntime (chunk-vendors.js:12075:19)  
    at Vue.asyncMethod (App.vue:14:1)  
    at Vue.onLaunch (App.vue:5:1)  
    at invokeWithErrorHandling (chunk-vendors.js:4214:26)  
    at Vue.push.4UNb.Vue.__call_hook (chunk-vendors.js:10957:17)  
    at o (chunk-vendors.js:35000:164)  
    at Vue.mounted (chunk-vendors.js:35465:29)  
    at invokeWithErrorHandling (chunk-vendors.js:4214:57)  
    at callHook (chunk-vendors.js:6620:7)  
    at mountComponent (chunk-vendors.js:6484:5)
2022-05-22 17:32 负责人:无 分享
已邀请:
寒风丶

寒风丶

请问解决了吗?

Andste

Andste

我也有同样的问题,楼主解决了吗。。

DCloud_UNI_GSQ

DCloud_UNI_GSQ

4.5.17 是什么版本?

新创建一个试试。

1***@qq.com

1***@qq.com

请问解决了吗?我也遇到这个问题了

2***@qq.com

2***@qq.com

锁定 @babel/runtime 的版本到 7.17.9 可以解决

  • XinYuan

    锁定 @babel/runtime 的版本到 7.17.9没有解决啊,请问大佬具体怎么搞的

    2022-06-02 01:32

DCloud_UNI_WZF

DCloud_UNI_WZF

可参考该 帖子 的解决方案

该问题目前已经被锁定, 无法添加新回复