12 lines
367 B
TypeScript
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 }
|