数据响应式就是数据变化可以被检测到并对这种变化做出响应的机制。vue是通过数据监听和发布订阅来实现的。数据监听就是通过object.defineProperty对data里的数据对象进行劫持,为每个属性添加set/get方法,在获取值时触发get方法并在get方法中收集依赖watcher,一个数据可能对应多个依赖,所以将依赖放入dep中统一管理;当数据更新触发set方法,会去通知依赖从而触发视图更新。
组件要复用,数据要独立,函数每次执行都会返回全新的对象实例。 一个组件可能会被使用多次,组件被引用一次就会创建一份独立的数据来维护,组件间数据互不影响。就像通过new一个构造函数创建不同的实例一样。
是vue的内置组件,为了缓存组件状态,避免组件重复渲染,提升性能。
include:名称匹配的组件会被缓存;exclude:名称匹配的组件不会被缓存(优先级大);
max:最多缓存组件数,当超过这个数时会释放掉最久未被调用的那个已缓存组件。
生命周期变化:
不使用keep-alive:created --> mounted --> destroyed;
使用keep-alive且首次:created --> mounted --> activated --> deactivated;
使用keep-alive非首次:activated --> deactivated;
| 留言与评论(共有 0 条评论) “” |