Vue 3 原始碼開放,今天你學習了嗎?

發表於2019-10-05

正在海邊浪的思否小姐姐一覺睡醒發現,國慶假期都不休息的尤雨溪大大在昨天凌晨釋出了 Vue 3 原始碼,原始碼地址:https://github.com/vuejs/vue-... ——

作者表示,目前 Vue 3 依然是 Pre-Alpha 狀態,但主要的架構改進、優化和新功能都已經完成,剩下的主要是完成一些 Vue 2 現有功能的移植。

正式版本的釋出時間尚未提及,後面應該還會有 Alpha、Beta 等版本。根據 Vue 官方時間表,至少要等到 2020 年 Q1 才有可能釋出 3.0 正式版。

通過本次釋出的原始碼可以瞭解到針對 Vue 3 計劃並已實現的主要架構改進和新功能:

  • 編譯器(Compiler)
  • 使用模組化架構
  • 優化 "Block tree"
  • 更激進的 static tree hoisting 功能
  • 支援 Source map
  • 內建識別符號字首(又名 "stripWith")
  • 內建整齊列印(pretty-printing)功能
  • 移除 source map 和識別符號字首功能後,使用 Brotli 壓縮的瀏覽器版本精簡了大約 10KB

  • 執行時(Runtime)
  • 速度顯著提升
  • 同時支援 Composition API 和 Options API,以及 typings
  • 基於 Proxy 實現的資料變更檢測
  • 支援 Fragments
  • 支援 Portals
  • 支援 Suspense w/ async setup()

  • 最後,還有一些 2.x 的功能尚未移植過來:
  • 伺服器端渲染
  • <keep-alive>
  • <transition>
  • Compiler DOM-specific transforms
    v-on DOM 修飾符
    v-model
    v-text
    v-pre
    v-once
    v-html
    v-show

此外,目前釋出的 Pre-Alpha 版本打包後的程式碼是 ES2015+,尚未支援 IE11

思否小姐姐 溫馨提示

現在是閱讀 Vue 3 原始碼的好時機——目前程式碼結構清晰,且程式碼量相對較少(主體部分的程式碼量僅 1.1W 行)。Vue 3 程式碼主要使用 TypeScript 編寫,大家可以抓緊時間學(學)習(不)起(動)來(了)了!

相關文章