小程序里使用es7的async await语法

我们做小程序开发时,有时候想让自己代码变得整洁,异步操作时避免回调地狱.我们会使用es6的promise. es7的async,await .
promise在小程序和云开发的云函数里都可以使用. async和await只能在云开发的云函数里使用.我们在小程序的代码里直接使用,就会报如下错误.

小程序里使用es7的async await语法_第1张图片
这个报错就是告诉我们不能在小程序里直接使用es7的async和await语法.但是这么好的语法我们用起来确实显得代码整洁,逼格高.
那接下来我就教大家如何在小程序代码里使用es7的async和await语法.

一,下载facebook出的runtime.js类库

小程序里使用es7的async await语法_第2张图片
其实这个问题,一些大厂已经给出了解决方案.如上图,我们只需要把facebook出的这个runtime.js类库下载下来,然后放到我们的小程序项目里.
下载链接:https://github.com/facebook/regenerator/blob/master/packages/regenerator-runtime/runtime.js
github有时候下载比较慢,我也提前把这个类库下载好放我网盘里了.
小程序里使用es7的async await语法_第3张图片

下载链接:https://pan.baidu.com/s/19n5wmjIKK3PAPbcXBzWmQA 提取码:xxll

  • 如果链接失效,可以在底部 留言,或者私信石头哥获取.

二,下载后,把runtime.js放到我们项目里

我这里把runtime.js放到我的utils目录下,如果你没有utils目录,可以新建.
小程序里使用es7的async await语法_第4张图片

三,代码里引入runtime.js类库

这里建议大家用 require语法引入.
小程序里使用es7的async await语法_第5张图片
这里需要注意的是.上图我们引入runtime.js时的变量名regeneratorRuntime必须和我这里一模一样.要不然就会引入不成功.

引入完后,在编译代码,可以看到控制台不再报我们一开始的错误
小程序里使用es7的async await语法_第6张图片

四,简单使用async和await

首先要知道我们async和await是结合使用的.
小程序里使用es7的async await语法_第7张图片
上图是我简单写的一个定时器来模拟异步等待.只要我们这里成功的引入runtime.js类库,后面想使用async和await就方便很多了.

今天就讲到这里.想学习更多小程序相关的知识,请持续关注.下期见

你可能感兴趣的:(10小时零基础入门小程序开发,微信小程序,es7,async,await,小程序,小程序云开发)