收藏
回答

ES6 await, async 用不了

框架类型 问题类型 操作系统 工具版本
小程序 Bug Windows wechat_devtools_1.02.1809260_x64

ES6 await, async 用不了,报“

regeneratorRuntime is not defined

回答关注问题邀请回答
收藏

5 个回答

  • 我就磨刀,啥也不做
    我就磨刀,啥也不做
    2018-10-11

    已解决!


    小程序开发中由于 es6 至少 ios 9.1 不支持,所以如果已经在项目中使用了较多了es6或必须使用es6,则需要勾选 es6 转 es5,才能解决前述兼容问题。但若有使用 async await 会报 regeneratorRuntime is not defined 错误。解决方法如下:


    1. 下载 facebook 的 regenerator 库

    2. 取 regenerator-master/packages/regenerator-runtime 目录中的 runtime.js 文件放入你的项目中

    3. 在你有使用 async await 的文件前面引入这个 runtime.js 文件即可,引入代码如: const regeneratorRuntime = require('../../utils/runtime.js');


    就这样,解决了!


    2018-10-11
    有用 5
    回复 4
    • 星灵
      星灵
      2018-10-12

      完美!

      2018-10-12
      回复
    • 好好学习,天天锻炼
      好好学习,天天锻炼
      2018-10-12

      这样也可以,厉害了。

      还怕小程序限制太多。

      2018-10-12
      回复
    • 刘涵
      刘涵
      2018-11-13

      看来这就是小程序bug了, 还要自己import的  厉害了

      2018-11-13
      回复
    • Z
      Z
      2019-05-08

      引入了这个文件是不是不能勾选ES6转ES5了

      2019-05-08
      回复
  • 舍得叔叔
    舍得叔叔
    2018-11-18

    不知道为什么,从那个11.17开始,这种方式不好用了,大家是否遇到这个问题?

    2018-11-18
    有用
    回复
  • 半寸灰
    半寸灰
    2018-10-08

    云函数可以  


    小程序的话  需要转译

    2018-10-08
    有用
    回复
  • 星灵
    星灵
    2018-10-08

    vscode 中可以用的

    2018-10-08
    有用
    回复
  • 2018-10-08

    老哥,await, async 是ES7的内容,小程序还不支持吧。

    2018-10-08
    有用
    回复
登录 后发表内容