本篇文章给大家分享的是有关怎么在微信小程序利用co对异步流程进行处理,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
<强>有限公司强>
有限公司是一个基于ES6发电机特性实现的【异步流程同步化】写法的工具库。
有限公司需要使用承诺特性,所以,我们先来创建一个使用承诺来处理的异步方法:
function myAsyncFunc (), { ,return new 承诺(function (解决,,拒绝),{ ,setTimeout (function (), { ,console.log(做得“myAsyncFunction  !“); 解决({大敌; ,数据:“你好,World", ,}) ,},2000); ,}); }
然后,直接使用这个方法的话,就会如下,使用了然后/catch的回调方式来处理调用结果和异常处理:
myAsyncFunc(),然后(function (结果),{ ,console.log (result.data);//Hello, World }).catch (function (err), { ,//? });
而如果是使用有限的话,则会像这样:
有限公司(function * (), { ,try { ,var result =,油品收率myAsyncFunc (); ,console.log (result.data);//Hello, World }大敌;抓(e), { ,} });
这样的写法,是不是就是我们非常熟悉的,比较符合逻辑思维习惯的同步写法了?
关于公司的用法,在本文中我就不多展开了,有兴趣的朋友可以自行搜索相关资料。我今天要讲的是,如何在小程序环境下面成功的使用co .
<强> 1。开启语言转译选项强>
由于要使用到ES6的发电机,而又要为了兼容性,我们必须对ES6的语法进行降级转译,变成ES5。
npm install 回热器
然后将下载文件中名为regenerator-runtime.js的文件拿出来,放到我们的小程序代码中去。
<强> 3。下载co和承诺库强>
接着,通过npm下载公司库:
npm install 有限公司
将下载文件中名为有限公司js文件拿出来,放到我们的小程序代码中去。
因为需要依赖承诺,所以我们需要引入一个承诺实现库。在此我们选用一个小而兼容性好的库es6-promise。同样可以通过npm下载:
npm install es6-promise
将es6-promise.js放到我们的小程序代码中。
<强> 4。引入小程序代码中强>
使用前,将这些库正确的引入我们的代码:
const Promise =, global.Promise =,需要(& # 39;. ./. ./libs/es6-promise& # 39;) const regeneratorRuntime =, global.regeneratorRuntime =,需要(& # 39;. ./. ./libs/regenerator-runtime& # 39;) const co =,要求(& # 39;. ./. ./libs/有限公司# 39;)
以上就是怎么在微信小程序利用co对异步流程进行处理,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。