UNPKG

test-whiteboard

Version:

https://gitlab.gridsum.com/gov_law_tech/FrontEnd/whiteboard

36 lines (32 loc) 695 B
export default class EventEmitter{ constructor(){ this.callbacks={ }; } on (key,callback) { if(!this.callbacks) { this.callbacks={}; } if(!this.callbacks[key]) { this.callbacks[key] = []; } this.callbacks[key].push(callback); } emit (key,...args) { if(!this.callbacks) { this.callbacks={}; } var events = this.callbacks[key]; if(!events) { return; } for(var i=0;i<events.length;i++) { events[i].apply(this,args); } } }