vue2学的差不多了,所以最近把vue3学习了一下,总体上两者之间有一定的区别,第一次学vue3可能会觉得没有vue2好用,但是其实vue3也优化了很多,vue3使用也会是大致趋向.
Vue3与Vue2最大区别:
- 简⽽⾔之就是变得更轻,更快,使⽤起来更加⽅便
- vue2中数据响应式是通过es5中Object.definePropert()对数据进行劫持 结合 发布订阅模式的⽅式来实现的,vue3则是通过es6中Proxy,通过 reactive() 函数给每⼀个对象都包⼀层 Proxy,通过 Proxy 监听属性的变化,从⽽ 实现对数据的监控
- vue2中是通过各种配置项实现功能,vue3是每个功能能出现在一起,避免代码多,看着不清楚,一并在setup中管理
Vue3中生命周期有所变化:
vue3中代码:(基本代码,还有很多代码)
import {ref,reactive} from 'vue'
export defalut{
name:'xxx',
setup(){
let name = ref('张三');//一般用于单个数据响应式,多个也行,但取值需要加上.value
let obj = reactive({//reactive对象数据响应式
name:'zhangsan',
age:15
})
return{name,obj }
}
}
vue2和vue3的区别图片:
主要有hooks函数可以实现代码按照功能实现,而不是vue2中每个配置都要写在不同的地方,更好的组织代码
vue3主要优点就是:
- 更强的性能,更好的 tree shaking
- Composition API + setup
- 更好地支持 TypeScript
其他内容还需要继续学习去学习,加油!