帶你簡單解讀 Vue3


Vue.js 3.0 "One Piece" 已正式發布,此框架新的主要版本提供了更好的性能、更小的捆綁包體積、更好的 TypeScript 集成、用於處理大規模用例的新 API,並為框架未來的長期迭代奠定了堅實的基礎。

Vue 3.0 的發布標志着此框架整體上已處於可用狀態。盡管框架的某些子項目可能仍需要進一步的開發才能達到穩定狀態(特別是 Devtools 中的路由和 Vuex 集成),不過現在仍然是開始使用 Vue 3 啟動新項目的合適時機。官方還鼓勵庫作者現在可以開始升級項目以支持 Vue 3。查閱《Vue 3 Libraries Guide》以獲取有關所有框架子項目的詳細信息。

快速認識Vue3

主要改進:

1、提升運行時性能:重寫vDOM

2、提升網絡性能:tree-shaking 機制

3、完全的 typescript 支持

4、便利性改進

5、自定義的 Renderer API

6、生態圈改進

一、vDOM 重寫

大幅提升運行時性能:

什么是vDOM:虛擬DOM元素,提升性能

效果如何:提升30%-300%

核心思想:跳過靜態節點,只處理動態節點

性能上,主要是優化了虛擬 DOM,所以也就有了更加優化的編譯,同時實現了更加高效的組件初始化。

二、tree-shaking 機制

大幅提升網絡性能:

什么是 tree :依賴樹,所有的依賴都是 tree 的節點

如何 shaking :通過代碼反向檢測哪些特性被用到

效果如何:只打包必要的依賴項

三、底層 typescript 支持

為什么使用 ts :

強大的類型系統、類型提示:大型應用必備

Vue3 支持情況如何:完成用 typescript 重寫

開發工具支持:使用 Javascript 也有好處

四、便利性改進

方便終端用戶使用:

·Fragment(碎片): 模板更簡單

  • No longer limited to a single root node in templates (<template> 中不再局限於單一的根節點)
  • Manual render functions can simply return Arrays (render 函數可以返回數組)
  • “Just works”

·Teleport(傳送): 布局更靈活

  • Previously known as <Portal>(原名為 <Portal>
  • More details to be shared by @Linusborg

·Suspense(異步加載): 強大的異步組件

  • Wait on nested async dependencies in a nested tree
  • Works with async setup() (與 async 函數 setup() 配合使用)
  • Works with Async Components (與 Async 組件配合使用)

·composition-api: 邏輯重用: 代替了mixin

Composition API 主要是提高了代碼邏輯的可復用性,並且將 Reactivity 模塊獨立出來,這也使得 vue 3 變得更加靈活地與其他框架組合使用。

五、Custom Renderer API

  • NativeScript Vue integration underway by @rigor789
  • Users already experimenting w/ WebGL custom renderer that can be used alongside a normal Vue application (Vugel)

自定義 render。我們會提供一個 API 用來創建自定義的 render,因此你不需要為了自定義一些功能而 fork Vue 的代碼。這個特性給 Weex 和 NativeScript Vue 這樣的項目提供了很多便利。

六、生態圈支持

Vue3 相關配套全面升級:

·vue-router@next

·vuex@next

·vue-cli-plugin-vue-next: 生成 vue3 項目的 cli 工具

·test-utils@next (測試工具)

·DevTools、Vite

Vue2 呢?

同時,團隊已開始啟動 2.7 的開發工作計划,這將是 2.x 的最后一個次要版本。2.7 將向后移植來自 v3 的兼容改進,並會提示有關 v3 中已刪除/更改的 API 使用情況的警告。團隊表示計划在 2021 年第一季度開發 2.7,發布后將直接變為 LTS 版本,具有 18 個月的維護周期。后面就不再支持2.X的更新了,除非有安全性問題。

Vue2.7:

·融入一部分 Vue3 功能

·LTE 支持18個月,之后以安全性更新為主

 

尤雨溪:Vue3.0正式全球發布會視頻


免責聲明!

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



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