《浅谈我眼中的express、koa和koa2》好文留存+笔记

原文 :三英战豪强,思绪走四方。浅谈我眼中的express、koa和koa2

 

 1、回调大坑怎么解决呢?node

一、es5能够利用一下第三方库,例如  async 库,
二、或者单纯使用  connect中间件 提供的  next 功能来处理,
三、还能够利用  promise 来处理回调大坑。固然,单纯使用promise可能给本身带来另一个大坑,then大坑,或者叫pipe大坑,无数个then,想一想也是够恐怖的。
四、另外,还可使用node自带的  事件模块 来处理回调问题,利用事件代理(我记得是backbone的一个模块)来简化代码书写。关于事件模块,我以后会写个小专题,来讲说node的事件原理。不过,虽然提到了事件模块,可是,我不推荐用事件去处理回调嵌套,由于,须要写更多的代码,得不偿失

2、Generator函数和yield语句是一对好基友,若是没有yield语句的话,Generator函数只不过是暂缓执行的状态机而已。经过配合yield,Generator 函数就能够暂停执行和恢复执行,从而将其内部封装的异步函数变为同步执行express

固然 Generator函数还有些滥用之嫌,ES官方组织对于Generator函数是不满意的。因而在ES7规范中,捣鼓出来了 async/await 这个目前为止,异步回调最佳的解决方案。promise

async/await规范是Generator函数+yield语句的语法糖koa

相关文章
相关标签/搜索