blessing-skin-server/resources/assets/src/scripts/event.ts
2019-03-28 16:37:01 +08:00

12 lines
367 B
TypeScript

const bus: { [name: string]: CallableFunction[] } = Object.create(null)
export function on(eventName: string, listener: CallableFunction) {
(bus[eventName] || (bus[eventName] = [])).push(listener)
}
export function emit(eventName: string, payload?: any) {
bus[eventName] && bus[eventName].forEach(listener => listener(payload))
}
blessing.event = { on, emit }