使用Vue3和Vue2进行开发的区别
笔者虽然老早就是用vue3进行开发了,但是上次有人问道使用vue3进行开发跟使用vue2进行开发的区别有哪些这个问题的时候,回答的还是有些琐碎,干脆今天专门整理一下,做个记录。
一、再也不用set了
众所周知,vue3使用的是Proxy对象进行代理,对数据进行监控,而vue2是使用object.defineProperty()来实现的,针对数组或者对象的新增属性的变化是需要专门用vue.set方法去做处理,通过命令的方式添加一个监控。大家有兴趣可以看看Proxy如何使用,就知道vue3自然而然的取消了set方法,无形之中给我们省了很多代码。微笑.png
二、组合式书写模式
vue2中在一个组件里我们分门别类的把一些功能放在钩子函数、方法、data方法中,这对于一些不习惯拆分组件的人来说当代码量堆积到一定程度后,从data函数中定义的一个变量再到需要用到这个变量的第一个函数之间可能跨越了几百行代码,来回翻都会觉得很累。组合式API则相当于按照功能把代码放到了一起,你可以在变量的后面直接watch它或者写一些利用它的变量等等。
三、编写方式的更改
vue3跟vue2的一些书写方式变了很多,以至于当时迁移一个小项目都用了半天的时间。具体的更改内容大家可以看看官网,里面有详细介绍https://v3.cn.vuejs.org/guide/migration/introduction.html#%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B