npm 包 weighted-emitter 使用教程

阅读时长 3 分钟读完

简介

在前端开发中,事件监听是必不可少的一个功能。而 Node.js 中的 EventEmitter 已经成为了一个比较常用的事件监听器,它可以让我们在 Node.js 中实现事件驱动的开发思路。

而在 EventEmitter 之上又有了一款 npm 包,它就是本文要介绍的 weighted-emitter,它提供了一个带权重的事件监听器,可以让我们更加精确的控制事件的触发顺序。

安装

首先我们需要使用 npm 进行安装:

之后,在我们要使用 weighted-emitter 的文件中引入它:

使用

在了解了 weighted-emitter 的基本用法之前,让我们先来看一下它的 API:

new WeightedEmitter()

新建一个 weighted emitter:

emitter.on(event, listener, weight)

添加一个监听器,weight 即权重,取值范围为 0 到 100,默认值为 50:

emitter.emit(event, ...args)

触发一个事件:

emitter.removeListener(event, listener)

移除一个监听器:

emitter.removeAllListeners(event)

移除所有监听器:

示例代码

下面是一个简单的示例:

-- -------------------- ---- -------
----- --------------- - ----------------------------

----- ------- - --- ------------------

------------------ -- -- -
  ----------------- ----
-- ----

------------------ -- -- -
  ----------------- ----
-- ----

---------------------

上面的代码会依次输出:

因为我们设置了 test 1 的权重为 60,test 2 的权重为 40,所以 test 1 先被触发。

总结

weighted-emitter 是一个带权重的事件监听器,可以让我们更加精确的控制事件的触发顺序。它有着简单易用的 API,而且非常轻量,是我们在前端开发中的一款非常有用的 npm 包。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005552681e8991b448d25be

纠错
反馈