@likg/bus
Version:
3 lines (2 loc) • 438 B
JavaScript
/* eslint-disable */
var Bus=function(){"use strict";class s{bus={};static instance;constructor(){}static defaultUtils(){return this.instance||(this.instance=new s),this.instance}$on(s,t){this.bus[s]||(this.bus[s]=[]),this.bus[s].push(t)}$emit(s,...t){const i=this.bus[s];if(i)for(const s of i)s.call(this,...t)}$off(s,t){const i=this.bus[s];i&&(t?i.forEach((s,n)=>{s===t&&i.splice(n,1)}):delete this.bus[s])}}return s.defaultUtils()}();