type
status
date
slug
summary
tags
category
icon
password
Diff算法
目的:将新旧虚拟DOM节点比较,计算diff来更新真实DOM
三个原则:
- 只比较相同层级,不会跨层级比较
- 同一类型会保留,不同类型直接销毁
- 列表比较,通过key来识别哪些被移动、删除、新增
状态管理库
- State:状态
- Action:动作
- Store:状态实例
- Reducer:接收动作,改变状态
- Subscription:状态变化的时候更新UI
Vue
Vue生命周期
- beforeCreate
- created
- beforeMounte
- mounted
- beforeDestory
- destoryed
Vue2.0和3.0什么区别
Vue2.0使用 Object.defineProperty() 拦截get和set实现响应式,存在一些限制,如无法检测对象属性的添加和删除,对数组的部分操作不能触发更新。
Vue3.0使用 Proxy 实现响应式,解决了 Object.defineProperty() 的限制,能更好地检测对象属性的变化。
Vue组件通信方式
父向子:props
子向父:emit
跨层级:provide和inject
状态管理库:vuex,redux