reduce处理异步同步化

在业务开发中遇到了一个场景,需要command-line linerface,然后程序根据用户输入做出不同处理,并且用户的输入是连续的。在查找了node.js的文档后,我找到了readLine的api。

什么是readLine

readLine是node.js里实现标准输入输出的模块,通过这个模块我们可以以逐行的方式读取数据流。

如何使用readLine

1.创建readLine实例

2.学习里面的接口方法

3.学习监听与处理readLine方法

在createInterface里,传入标准输入输出作为数据的输入和输出

在question方法的回调函数里,获取用户的输入并做相应处理,同时用close来结束程序。

promise

找到了readLine,可以满足我在终端用question来询问用户,进行终端输入了。本文真正的讲点从这里开始了,由于每一个question都是异步的,所以我们的多个终端顺序输入遇到了挑战。

首先,把每一个输入操作都转成Promise的异步,将所有的操作放到数组里面,其次利用reduce累加器的效果,实现异步操作顺序化。


详情见:

我的微博-reduce

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容