class Pubsub {
constructor() {
this.subscribers = [];
}
subscribe(event, callback) {
if(!this.subscribers[event]) {
this.subscribers[event] = [];
}
this.subscribers[event].push(callback);
}
publishSync(event, data) {
if(!this.subscribers[event]) return;
this.subscribers[event].forEach(cb => cb(data));
}
}
const sub = new Pubsub()
sub.subscribe('getList', (msg) => {
console.log('getListEvent', msg)
})
sub.subscribe('getList', (msg) => {
console.log('getListEvent1', msg)
})
setTimeout(() => {
sub.publishSync('getList', 'wcl')
}, 2000)
console