vue 2.0与vue3.0的区别


1. vue2和vue3双向数据绑定原理发生了改变

vue2 的双向数据绑定是利用ES5 的一个 API Object.definePropert()对数据进行劫持 结合 发布订阅模式的方式来实现的。

vue3 中使用了 es6 的 ProxyAPI 对数据代理。

 

相比于vue2.x,使用proxy的优势如下   

1.defineProperty只能监听某个属性,不能对全对象监听,而proxyAPI则可以监听整个对象   

2.可以省去for in、闭包等内容来提升效率(直接绑定整个对象即可)   

3.可以监听数组,不用再去单独的对数组做特异性操作 vue3.x可以检测到数组内部数据的变化

 

 

2.移除过滤器filters

vue3x删除了filters 并推荐使用computed代替计算属性,在2x中filters和computed有许多相似之处,这个不仅增加了学习成本也增加了维护成本,因此在3.0的中完全摒弃了filters。

 

3.生命周期的变化

  • 移除了beforeCreate()和Created()
  • 新增了setup().
  • 在剩余六个函数之前加入了on

在这里插入图片描述

4.支持多节点组件

在2.0中我们需要 在template标签内包一个div来防止用户意外创建多根组件时发出的警告,即

<template>
    <div>
        <header></header>
        <main></main>
        <footer></footer>
    </div>
</template>

但在3.0中这样做不是必须的 。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM