vue2.0和vue3.0的區別


1、vue2使用Object.defineProperty方法實現響應式數據,vue3使用proxy實現響應式數據

Object.defineProperty的缺點:

  無法檢測到對象屬性的動態添加和刪除

  無法檢測到數組的下標和length屬性的變更

解決方法:

  vue2提供Vue.$set動態給對象添加屬性

  Vue.$delete動態刪除對象屬性

  重寫數組的方法,檢測數組變更

proxy的缺點:

  es6的proxy不支持低版本瀏覽器(IE11)

  會針對IE11出一個特殊版本進行支持

proxy的有點:

  可以堅持到代理對象屬性的動態新增和刪除

  可以監測到數組的下標和length屬性的變化

 

2、vue3新特性:

  ①:數據響應重新實現(ES6的proxy代替ES5的Object.defineProperty)

  ②:源碼使用ts重寫,更好的類型推導

  ③:虛擬DOM新算法(更快、更小)

  ④:提供了composition api,為更好的邏輯復用與代碼組織

  ⑤:自定義渲染器(app、小程序、游戲開發)

  ⑥:Fragment,模板可以有多個根元素


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM