class Subscribe {
constructor() {
this.observers = []
this.state = ''
}
attach(...rest) {
this.observers.push(...rest)
}
setState(newState) {
this.observers.forEach(o => o.update(newState))
}
}
class Observer {
constructor(name, callback) {
this.name = name
this.callback = callback
}
update(newState) {
this.callback(newState)
}
}
var sub = new Subscribe()
var observer1 = new Observer('小米', function(msg) {
console.log('执行', msg)
})
var observer2 = new Observer('小高', function(msg) {
console.log('执行111111', msg)
})
sub.attach(observer1)
console