1. vue2和vue3双向数据绑定原理发生了改变
vue2 的双向数据绑定是利用ES5 的一个 API Object.definePropert()
对数据进行劫持 结合 发布订阅模式的方式来实现的。
vue3 中使用了 es6 的 Proxy
API 对数据代理。
2.vue3基本兼容vue2的代码
优点:按需引用组合式api:更加接近原生js,更加直观没有this,同时也更有效的降低了代码的耦合性。
3.生命周期钩子
1. setup() :开始创建组件之前,在beforeCreate和created之前执行。创建的是data和method
2. onBeforeMount() : 组件挂载到节点上之前执行的函数。
3. onMounted() : 组件挂载完成后执行的函数。
4. onBeforeUpdate(): 组件更新之前执行的函数。
5. onUpdated(): 组件更新完成之后执行的函数。
6. onBeforeUnmount(): 组件卸载之前执行的函数。
7. onUnmounted(): 组件卸载完成后执行的函数
*若组件被<keep-alive>包含,则多出下面两个钩子函数.*
8. onActivated(): 被包含在中的组件,会多出两个生命周期钩子函数。被激活时执行 。
9. onDeactivated(): 比如从 A组件,切换到 B 组件,A 组件消失时执行。