怎么在微信小程序利用co对异步流程进行处理

  介绍

本篇文章给大家分享的是有关怎么在微信小程序利用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。

怎么在微信小程序利用co对异步流程进行处理”> <br/>开启语言转译选项<br/> </p> <p> <强> 2。引入发电机支撑库</强> </p> <p>经过转译后的代码,需要依赖一个regeneratorRuntime,才能支持发电机特性.Facebook开源的一个再生器就是这样一个库,Github地址:https://github.com/facebook/regenerator/</p> <p>你可以通过npm来下载这个再生器库:</p> <pre类= 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对异步流程进行处理,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

怎么在微信小程序利用co对异步流程进行处理