// 极简事件总线(避免引入额外依赖) const listeners = new Map() export function on(event, handler) { if (!event || typeof handler !== 'function') return const set = listeners.get(event) || new Set() set.add(handler) listeners.set(event, set) } export function off(event, handler) { const set = listeners.get(event) if (!set) return set.delete(handler) if (set.size === 0) listeners.delete(event) } export function emit(event, payload) { const set = listeners.get(event) if (!set || set.size === 0) return for (const fn of Array.from(set)) { try { fn(payload) } catch (e) { // ignore } } }