Node3-3 base API ---- event (Event Trigger)

1. Basic (on)


// If the object as will the ability to integrate Related event EventEmitter const = EventEmitter the require ( 'Events') // integrated EventEmitter class class CustomEvent the extends EventEmitter { } // instantiate an object const CustomEvent new new CE = () // a binding event name ce.on ( 'Test', () => { the console.log ( 'the this Test IS A'); }) the setInterval (() => { ce.emit ( 'Test') }, 500)

Run effect is to continue the implementation of this is a test

2. pass some parameters, basic information

const EventEmitter = require('events')

class CustomEvent extends EventEmitter{}
const ce = new CustomEvent() 

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

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

3. Do just once once (below even operate as before on, that is, once every 500 milliseconds, but after running it performed once only)

const EventEmitter = require('events')
class CustomEvent extends EventEmitter{}

const ce = new CustomEvent()
ce.once('test',()=>{
    console.log('test event');
    
})
setInterval(()=>{
    ce.emit('test')
},500)

4. Remove the work, bind a number of events in some scenarios need to be removed off (removeListener or removeAllListener)

const EventEmitter = require('events')
class CustomEvent extends EventEmitter{}
function fn1(){
    console.log('fn1');
}
function fn2(){
    console.log('fn2');
}
const ce = new CustomEvent() ce.on('test',fn1) ce.on('test',fn2) setInterval(()=>{ ce.emit('test') },500) setTimeout(()=>{ // ce.removeListener('test',fn2) // ce.removeListener('test',fn1) //移除所有事件名的事件 ce.removeAllListeners('test') },1500)

 

Guess you like

Origin www.cnblogs.com/chorkiu/p/11419216.html