2024 年 Vue 發(fā)展預(yù)測(cè)
對(duì)于前端開(kāi)發(fā)領(lǐng)域來(lái)說(shuō),Vue.js 的世界在不斷快速發(fā)展。本文就來(lái)嘗試預(yù)測(cè)一下 2024 年 Vue 可能的發(fā)展方向。
Vue 2 結(jié)束支持
隨著 Vue.js 社區(qū)不斷發(fā)展,Vue 2 將于 2023 年 12 月 31 日結(jié)束支持,達(dá)到生命周期結(jié)束(EOL),這標(biāo)志著更先進(jìn)版本的到來(lái)。
隨著這個(gè)重要轉(zhuǎn)折的到來(lái),可以預(yù)期在明年內(nèi)可能會(huì)大量使用組合式 API、Pinia、可組合函數(shù)和TypeScript等現(xiàn)代技術(shù)。
Vapor Mode
Vue Vapor Mode 是 Vue 生態(tài)系統(tǒng)中最令人激動(dòng)的發(fā)展之一。尤雨溪在 2022 年底的文章中首次宣布了 Vapor Mode。雖然最初預(yù)計(jì)在 2023 年發(fā)布,但看起來(lái)要到 2024 年才能發(fā)布了,目前 Vue 團(tuán)隊(duì)正在積極開(kāi)發(fā) Vapor Mode 中。
Vapor Mode 旨在通過(guò)去除虛擬 DOM 來(lái)提高性能,同時(shí)保持當(dāng)前腳本設(shè)置語(yǔ)法與組合式API的兼容性。該功能可以選擇在組件或應(yīng)用程序級(jí)別啟用。如果想深入了解 Vapor Mode 的功能和影響,可以閱讀這篇文章:《即將到來(lái)的 Vue 3 “Vapor Mode”》。
性能改進(jìn)
前端框架的一個(gè)重要關(guān)注點(diǎn)就是性能。尤雨溪最近宣布正在開(kāi)發(fā)一個(gè)名為 Rolldown 的 Rust 版 rollup 工具。該工具專注于性能,并致力于與 Rollup 保持最佳兼容性,預(yù)計(jì)將加速已經(jīng)非??焖俚腣ue構(gòu)建工具Vite。
預(yù)計(jì) Vue.js 在核心庫(kù)方面的速度和性能也將繼續(xù)提升。其中一個(gè)特性就是作為定義異步組件選項(xiàng)的懶加載水合。這些改進(jìn)將進(jìn)一步提升 Vue.js 的性能和用戶體驗(yàn)。
新的和穩(wěn)定的功能
Vue.js 有許多新的和現(xiàn)有的實(shí)驗(yàn)性功能,很可能在2024年添加到穩(wěn)定的版本中。雖然以下功能并不確定,但預(yù)計(jì)至少會(huì)有大部分會(huì)在年底之前實(shí)現(xiàn):
- 在<dialog>和<details>元素上使用v-model:使數(shù)據(jù)綁定和更新UI更加便捷。
- 穩(wěn)定的defineModel :引入穩(wěn)定的defineModel,其提供了一些語(yǔ)法糖,以簡(jiǎn)化常見(jiàn)但略顯冗長(zhǎng)的用例。預(yù)計(jì)在2024年,它將達(dá)到穩(wěn)定階段。
- 穩(wěn)定的Suspense組件:這個(gè)組件已經(jīng)有一段時(shí)間保持實(shí)驗(yàn)狀態(tài)了。在流行的Nuxt 3元框架中廣泛使用后,未來(lái)的變動(dòng)應(yīng)該很小,因此預(yù)計(jì)它將很快達(dá)到穩(wěn)定階段。
- 條件屬性:根據(jù)這個(gè) issue[1] 的建議,有可能會(huì)引入條件屬性,為組件提供更具表現(xiàn)力和靈活性的TypeScript支持。
- Vue Router 數(shù)據(jù)加載器:根據(jù)這個(gè) RFC[2] 中的討論,可以看出Vue路由器數(shù)據(jù)加載器的討論正在進(jìn)行,其旨在簡(jiǎn)化 Vue 應(yīng)用中的數(shù)據(jù)獲取和路由。
2023 年即將結(jié)束,預(yù)計(jì) 2024 年 Vue 核心和整個(gè)生態(tài)系統(tǒng)的性能和易用性都會(huì)取得進(jìn)步!
相關(guān)鏈接
[1]issue: https://github.com/vuejs/core/issues/8952。
[2]RFC: https://github.com/vuejs/rfcs/discussions/460。