发布订阅
js
class Event {
eventObj = {}
constructor() {
this.eventObj = {}
}
on(key, fn) {
this.eventObj[key] = fn
}
emit(key, ...args) {
this.eventObj[key](...args)
}
off (key) {
this.eventObj[key] = null
}
}
// 测试
const myEvent = new Event()
myEvent.on('name', () => {
console.log('修改了name')
})
myEvent.emit('name', 'Mary')