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