微信小程序使用async 语法

最近在原生的微信小程序项目中需要把原来es6的promise方法改成es7的async await,这样代码看起来更直观,也方便以后的兄弟维护,但是改了代码之后项目就报错了。;

提示的错误是:regeneratorRuntime is not defined

1.解决步骤

勾选ES6转ES5

勾选ES6转ES5
2.下载 facebook的regenerator库中的regenerator/packages/regenerator-runtime/runtime.js

请注意:这里的给出的库是指定版本的,不要下载最新的。

3.在小程序目录下新建文件夹 lib/runtime/runtime.js,将代码拷贝进去。
4在每一个需要使用async语法的页面js文件中,都引入(不能全局引入),只需要引入,不需要调用。

import regeneratorRuntime from '../../lib/runtime/runtime';

最后就可以正常使用了async语法处理异步请求了。