在Vue2中给data中的属性添加新属性的方法

在Vue2中给data中的属性添加新属性的方法

由于Vue2的双向绑定是基于 Object.defineProperty() 的,这个方法只能监听 data 里面已经存在的属性,并不能对于新添加的属性进行监听,故而直接给data添加新属性是无法被vue监听到并绑定到页面上的。

这里注意:是没办法添加data下的一级属性的,必须事先定义。

下面是几种给data中的属性添加新属性的方法。

阅读更多
js手写发布订阅(pubsub)

js手写发布订阅(pubsub)

面了一个央企,一上来就让我手写pubsub,没写出来,今天梳理和学习一下怎么写。

发布订阅模式:包含发布者(publisher),订阅者(subscriber),消息中心(message center)。

发布者发布消息给消息中心,并且可以携带参数。

订阅者向消息中心订阅消息,并且可以获取发布者发送的参数。

消息中心在获取到发布者的消息后通知订阅者并且转发参数。

阅读更多
Vue2和Vue3的区别
js箭头函数(lambda表达式)和普通函数的区别
设计模式(ongoing)

设计模式(ongoing)

设计模式是在软件开发过程中对于问题的解决方案,也是软件开发的最佳实践。

比如如果某个接口的结构已经无法满足现在的需求,但是由于众多功能对于这个接口的依赖导致我们又不能改动这个接口,这个时候就可以使用适配器模式来解决这个问题。

阅读更多