Event使用步骤:
1、引入event类EventEmitter
const EventEmitter = require("events").EventEmitter;
2、实例化一个EventEmitter的对象
let event = new EventEmitter();
3、EventEmitter的实例方法和属性:
addListener : 注册一个事件监听,当emit发射同名事件的时候,回调函数会执行
on : addListener的别名
off : 移除一个已注册的事件(注意listener回调方法需要和注册的方法是一个对象)
once : 保证只注册监听一次,发射第二次同名事件无法收到
emit : 发射自定义事件(事件名和注册的事件名应该一致),该方法的第二个参数是事件携带参数
listenerCount : 获取注册的事件数量,比如listenerCount('click') 返回click注册事件的数量
listeners : 获取注册的事件集合,比如listeners('click') 返回click注册事件数组
addListener用于注册事件
event.addListener("click", e => {
console.log(e);
});
on相当于addListener的别名,简写
var fn = e => {
console.log(e);
};
event.on("click", e => {
console.log(e);
});
event.on("click", fn); //注册事件
// event.off("click", fn); //取消一个事件的注册
console.log(event.listenerCount("click")); //获取关于click事件的监听数量
console.log(event.listeners("click"));
// once只触发一次事件
// event.once("click", e => {
// console.log(e);
// });
// 用于发射事件
event.emit("click", { name: "zhangsan" });