node之EventEmitter类总结

node 异步编程,异步的i/o
events模块是内置的模块。使用的里面的evenetEmitter 类模块 主要功能是 事件的发布 和 事件的监听。
通过require(“events”);来访问该模块:

// 引入 events 模块
const events=require("events");
// 创建 emitter 对象
const emitter=new events.EventEmitter();
  • on 添加一个监听 监听事件的回调函数
  • emit 触发事件 携带参数
  • once 添加一个监听 (监听一次)
  • addListener 添加监听
const events=require("events");
const emitter=new events.EventEmitter();
//先监听事件
emitter.on("dosomething",(args)=>{
    
    
    console.log(args);
});
//一次性监听
emitter.once("sendmsg",(args)=>{
    
    
    console.log(args);
});
let handle=(args)=>{
    
    
    console.log(args);
}
emitter.addListener("listener",handle);

setTimeout(()=>{
    
    
    console.log(emitter.listeners("dosomething"));
    //移除所有的监听
    //emitter.removeAllListeners();
    //移除上面的监听
    //emitter.removeListener("listener",handle);   
    emitter.emit("dosomething","你好");
    emitter.emit("sendmsg","一次性");
    emitter.emit("listener","add");
},3000);

输出结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_47863547/article/details/119428597