求问关于 events 模块
发布于 5 年前 作者 guojingkang 4313 次浏览 来自 问答

翻看 events 的 api 的时候,突然想到个问题:为啥要引入 event 这个机制,这个机制解决了什么问题。有没有大佬指点下。

3 回复

image.png

你能看到的 http , stream, fs 和绝大多数模块都用到这个 b

深入浅出NodeJS这本书解释的很详细 整个NodeJS的核心就是eventLoop

上面几位说了 events 模块在node源码中的应用,我说下在工程中的应用吧

Events 的特点是把流程打乱了,你的代码爱怎么写就怎么写。最后通过事件串起来就行。Events 适合模块(函数)之间通信用,但是不适合做流程控制。

我原来写过一个 npm 库,是 redis 做消息队列的应用,里面就用到了事件,原来考虑时也想通过callback/promise 等实现,却发现这些方式实现,代码会冗余不少。 考虑过后通过 events 实现。

贴一下地址 git地址。感觉不错,欢迎 star 。。。

回到顶部