React 18 最新進(jìn)展:發(fā)布 alpha 版本、全新 SSR 架構(gòu)
React 開(kāi)發(fā)團(tuán)隊(duì)公布了 React 18 的開(kāi)發(fā)和發(fā)布計(jì)劃,當(dāng)前的最新工作進(jìn)展如下:
- 已開(kāi)始 React 18 版本的發(fā)布工作,這將是下一個(gè)主要版本
- 創(chuàng)建了工作組,為社區(qū)逐步采用 React 18 的新特性做準(zhǔn)備
- 發(fā)布了 React 18 Alpha 版本,便于庫(kù)作者嘗試它并向開(kāi)發(fā)團(tuán)隊(duì)提出相應(yīng)反饋
React 18 主要變化
當(dāng) React 18 發(fā)布時(shí),它將包含開(kāi)箱即用的改進(jìn)(如 automatic batching)、全新的 API(如 startTransition )以及內(nèi)置支持了 React.lazy 的 全新 SSR 架構(gòu)。
這些功能的實(shí)現(xiàn)要?dú)w功于 React 18 新加入的可選的 “并發(fā)渲染 (concurrent rendering)” 機(jī)制。它支持 React 同時(shí)準(zhǔn)備多個(gè)版本的 UI。這個(gè)機(jī)制主要在幕后進(jìn)行,但它為 React 啟發(fā)了非常多新的可能性,以提升應(yīng)用程序的真實(shí)與感知性能。
此外,對(duì)于“并發(fā)模式 (concurrent mode)”,開(kāi)發(fā)團(tuán)隊(duì)重新設(shè)計(jì)了可漸進(jìn)的升級(jí)策略,而不是此前的二選一方式。具體來(lái)說(shuō)就是只有由新特性觸發(fā)的更新會(huì)啟用并發(fā)渲染。在實(shí)踐中,這意味著開(kāi)發(fā)者無(wú)需重寫(xiě)代碼即可直接使用 React 18,且可以根據(jù)自己的節(jié)奏來(lái)嘗試新特性。
漸進(jìn)的采用策略
由于 React 18 中的并發(fā)性是可選功能,所以并不會(huì)立刻對(duì)組件行為帶來(lái)明顯的破壞性變化。對(duì)于開(kāi)發(fā)者來(lái)說(shuō),他們幾乎不需要對(duì)應(yīng)用程序中的代碼進(jìn)行任何改動(dòng)就可以直接升級(jí)到 React 18,而且并不會(huì)比以往的 React 版本升級(jí)要困難。
React 開(kāi)發(fā)團(tuán)隊(duì)稱,根據(jù)他們將幾個(gè)應(yīng)用程序升級(jí)到 React 18 的經(jīng)驗(yàn)來(lái)看,預(yù)計(jì)許多用戶能在一個(gè)下午的時(shí)間內(nèi)完成升級(jí)工作。他們也致力于確保整個(gè)社區(qū)都能平滑的升級(jí),所以宣布了 React 18 工作組的成立。
React 18 工作組的目標(biāo)是為現(xiàn)有應(yīng)用程序和庫(kù)順利、逐步采用 React 18 做好準(zhǔn)備。
React 18 發(fā)布時(shí)間表
目前尚沒(méi)有安排具體的發(fā)布日期,大致計(jì)劃如下:
- 庫(kù)的 Alpha 版本:已發(fā)布
- 公開(kāi)測(cè)試版:至少幾個(gè)月
- 候選版本 (RC):至少在 Beta 測(cè)試發(fā)布后幾周
- 正式版 (GA):至少在 RC 發(fā)布后幾周
本文轉(zhuǎn)自O(shè)SCHINA
本文標(biāo)題:React 18 最新進(jìn)展:發(fā)布 alpha 版本、全新 SSR 架構(gòu)
本文地址:https://www.oschina.net/news/145753/the-plan-for-react-18