上午继续看hzero-front的官方文档,修改了IP地址,可以启动,但是会跳到服务器报错页面,感觉这个项目比较大, 需要静下心来一步一步抽丝剥茧,慢慢消化才能有所收获,上午效率不高。
下午听了一节视频课,跟着内容了解了一遍观察者模式与发布订阅模式。
观察者模式
定义一个对象与其他对象之间的一种依赖关系,当对象发生某种变化的时候,依赖它的其它对象都会得到更新。一对多的关系;
利用Object.defineProperty的set和get方法劫持数据,
Object.defineProperty(obj,'name',{
get(){
return value;
},
set(newValue){
console.log("set...");
value = newValue;
}
})
(Proxy代理)
发布订阅模式
发布-订阅是一种消息模式,消息的发送者(称为发布者)不会将消息直接发送给特定的接收者(称为订阅者)。而是将发布的消息分为不同的类别,无需了解哪些订阅者(如果有的话)可能存在。同样的,订阅者可以表达对一个或多个类别的兴趣,只接收感兴趣的消息,无需了解哪些发布者(如果有的话)存在。
案例代码编写 实现v-model
- 输入框input赋值
- 监听输入事件 实现数据响应式
二者关系
观察者模式观察者与订阅者之间有直接联系。发布订阅中发布者和订阅者无直接依赖关系。观察者模式属于紧解耦,发布订阅模式属于松解耦。发布订阅广义上是观察者模式。