


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【移动应用开发技术】小程序开发中如何利用co处理异步流程
这篇文章主要介绍小程序开发中如何利用co处理异步流程,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!微信小程序利用co处理异步流程的方法教程coco是一个基于ES6Generator特性实现的【异步流程同步化】写法的工具库。co需要使用Promise特性,所以,我们先来创建一个使用Promise来处理的异步方法:function
myAsyncFunc()
{
return
new
Promise(function
(resolve,
reject)
{
setTimeout(function
()
{
console.log("myAsyncFunction
done!");
resolve({
data:
"Hello,World"
})
},
2000);
});
}然后,直接使用这个方法的话,就会如下,使用了then/catch的回调方式来处理调用结果和异常处理:myAsyncFunc().then(function
(result)
{
console.log(result.data);
//Hello,World
}).catch(function
(err)
{
//...
});而如果是使用co的话,则会像这样:co(function
*()
{
try
{
var
result
=
yield
myAsyncFunc();
console.log(result.data);
//Hello,World
}
catch(e)
{
}
});这样的写法,是不是就是我们非常熟悉的,比较符合逻辑思维习惯的同步写法了?关于co的用法,在本文中我就不多展开了,有兴趣的朋友可以自行搜索相关资料。我今天要讲的是,如何在小程序环境下面成功的使用co。1.开启语言转译选项由于要使用到ES6的generator,而又要为了兼容性,我们必须对ES6的语法进行降级转译,变成ES5。开启语言转译选项2.引入generator支撑库经过转译后的代码,需要依赖一个regeneratorRuntime,才能支持generator特性。Facebook开源的一个regenerator就是这样一个库,Github地址:/facebook/regenerator/你可以通过npm来下载这个regenerator库:npm
install
regenerator然后将下载文件中名为regenerator-runtime.js的文件拿出来,放到我们的小程序代码中去。3.下载co和Promise库接着,通过npm下载co库:npm
install
co将下载文件中名为co.js文件拿出来,放到我们的小程序代码中去。因为需要依赖Promise,所以我们需要引入一个Promise实现库。在此我们选用一个小而兼容性好的库es6-promise。同样可以通过npm下载:npm
install
es6-promise将es6-promise.js放到我们的小程序代码中。4.引入小程序代码中使用前,将这些库正确的引入我们的代码:const
Promise
=
global.Promise
=
require('../../libs/es6-promise')
const
regeneratorRuntime
=
global.regeneratorRuntime
=
require('../../libs/rege
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海工艺美术职业学院《体育-桌式足球》2023-2024学年第二学期期末试卷
- 云南科技信息职业学院《隧道工程设计》2023-2024学年第二学期期末试卷
- 湖北交通职业技术学院《科技论文写作指导》2023-2024学年第二学期期末试卷
- 辽宁民族师范高等专科学校《纪录片创作》2023-2024学年第二学期期末试卷
- 广东亚视演艺职业学院《体育竞赛学》2023-2024学年第二学期期末试卷
- 海南热带海洋学院《古代文学专题II》2023-2024学年第二学期期末试卷
- 生物化学与分子生物学考点详解
- 会员积分兑换记录表
- 湖州职业技术学院《成本效益分析》2023-2024学年第二学期期末试卷
- 酒店行业客源分布统计表
- 金属非金属矿山安全标准化讲义
- 2023宿迁地生中考试卷
- 一人力资源转型和价值
- 设备采购质量保证措施
- 机房设备安装工程及移动通信工程施工工艺图解
- 国内生态工业园区发展分析
- YY/T 0292.1-1997医用诊断X射线辐射防护器具第1部分:材料衰减性能的测定
- LY/T 1697-2017饰面木质墙板
- GB/T 97.1-2002平垫圈A级
- GB/T 5121.27-2008铜及铜合金化学分析方法第27部分:电感耦合等离子体原子发射光谱法
- GB/T 1449-2005纤维增强塑料弯曲性能试验方法
评论
0/150
提交评论