美文网首页
观察者与被观察者模式

观察者与被观察者模式

作者: Rui___ | 来源:发表于2019-11-05 15:10 被阅读0次
     // 观察者模式--两者间有关系的  我加小宝宝 心情好 
    class Subject { // 被观察者 小宝宝
        constructor(){
            this.arr = []; // [o1,o2]
            this.state = '我很开心'
        }
        attach(o){ // 原型上的方法
            this.arr.push(o);
        }
        setState(newState){
            this.state = newState;
            this.arr.forEach(o=>o.update(newState))
        }
    }
    //观察者模式包含发布订阅
    class Observer{ // 观察者 我 我媳妇
        constructor(name){
            this.name = name
        }
        update(newState){
            console.log(this.name + '小宝宝:'+newState)
        }
    }
    let s = new Subject('小宝宝'); // 小宝宝
    let o1 = new Observer('我');
    let o2 = new Observer('我媳妇')
    s.attach(o1);
    s.attach(o2);
    s.setState('不开心了');

    相关文章

      网友评论

          本文标题:观察者与被观察者模式

          本文链接:https://www.haomeiwen.com/subject/loqzpctx.html