首页 > Windows开发 > 详细

node 基础API(event)

时间:2019-07-16 22:59:16      阅读:94      评论:0      收藏:0      [点我收藏+]
// 绑定事件
const EventEmitter=require(‘events‘);

class CustomEvent extends EventEmitter{}

const ce=new CustomEvent();

ce.on(‘test‘,()=>{
    console.log(‘this is a test‘);
});

setInterval(()=>{
    ce.emit(‘test‘)
},1000)

 

传参:

const EventEmitter=require(‘events‘);

class CustomEvent extends EventEmitter{}

const ce=new CustomEvent();

ce.on(‘error‘,(err)=>{
    console.log(err);
    console.log(time);
});

ce.emit(‘error‘,new Error(‘oops!‘));

// Error: oops!

// 多个参数
ce.on(‘error‘,(err,time)=>{
    console.log(err);
    console.log(time);
});

ce.emit(‘error‘,new Error(‘oops!‘),Date.now());

// Error: oops!
// 1563287056187

调用一次:

const EventEmitter=require(‘events‘);

class CustomEvent extends EventEmitter{}

const ce=new CustomEvent();

ce.once(‘test‘,()=>{
    console.log(‘test‘);
});

setInterval(()=>{
    ce.emit(‘test‘);
},500);

// test  一次

移出事件:

const EventEmitter=require(‘events‘);

class CustomEvent extends EventEmitter{}

const ce=new CustomEvent();

function fn1(){
    console.log(‘fn1‘);
}

function fn2(){
    console.log(‘fn2‘);
}

ce.on(‘test‘,fn1);
ce.on(‘test‘,fn2);

setInterval(()=>{
    ce.emit(‘test‘)
},1000);

setTimeout(()=>{
    // ce.removeListener(‘test‘,fn1);  // 移除单个

    ce.removeAllListeners(‘test‘)
},3000)

 

node 基础API(event)

原文:https://www.cnblogs.com/jingouli/p/11198001.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!