nhn-cd-sdk
Version:
NHN Cheating Detection SDK
31 lines (29 loc) • 681 B
JavaScript
export function createEventEmitter() {
const events = {};
return {
on(name, listener) {
events[name] = events[name] || [];
events[name].push(listener);
},
off(name, listener) {
if (!events[name]) {
return;
}
const listenerList = events[name];
const index = listenerList.indexOf(listener);
if (index > -1) {
listenerList.splice(index, 1);
}
},
fire(name, ...data) {
if (!events[name]) {
return;
}
events[name].forEach((listener) => listener(...data));
}
};
}
let eventEmitter = createEventEmitter();
export function useEventEmitter() {
return eventEmitter;
}