React Conf 2021 回顧
2021 年 12 月 17 日,由 Jesslyn Tannady 和 Rick Hanlon 發表
上週我們舉辦了第六屆 React Conf。在過去幾年中,我們利用 React Conf 的舞台發布了改變產業的重大消息,例如 React Native 和 React Hooks。今年,我們分享了 React 的多平台願景,從 React 18 的發布和逐步採用並行功能開始。
這是 React Conf 首次線上舉辦,並免費線上直播,翻譯成 8 種不同的語言。來自世界各地的參與者加入了我們的會議 Discord 和重播活動,以便所有時區的人都能參與。超過 50,000 人註冊,19 場演講觀看次數超過 60,000 次,兩個活動的 Discord 參與者超過 5,000 人。
所有演講都可以在線上觀看 線上觀看。
以下是舞台上分享內容的摘要
React 18 和並行功能
在主題演講中,我們分享了 React 未來的願景,從 React 18 開始。
React 18 加入了期待已久的並行渲染器和 Suspense 更新,且沒有任何重大的破壞性變更。應用程式可以升級到 React 18 並開始逐步採用並行功能,所需的工作量與其他主要版本相同。
這意味著沒有並行模式,只有並行功能。
在主題演講中,我們還分享了我們對 Suspense、伺服器組件、新的 React 工作組以及 React Native 的長期多平台願景。
觀看 Andrew Clark、Juan Tejada、Lauren Tan 和 Rick Hanlon 的完整主題演講
React 18 應用程式開發者
在主題演講中,我們還宣布 React 18 RC 現已開放試用。在收到進一步的回饋之前,這將是我們將於明年初發布到穩定版的 React 版本。
要試用 React 18 RC,請升級您的依賴項
npm install react@rc react-dom@rc
並切換到新的 createRoot
API
// before
const container = document.getElementById('root');
ReactDOM.render(<App />, container);
// after
const container = document.getElementById('root');
const root = ReactDOM.createRoot(container);
root.render(<App/>);
有關升級到 React 18 的示範,請參閱 Shruti Kapoor 的演講
使用 Suspense 串流伺服器渲染
React 18 還包含使用 Suspense 改進伺服器端渲染效能的功能。
串流伺服器渲染可讓您在伺服器上從 React 組件產生 HTML,並將該 HTML 串流傳輸給您的使用者。在 React 18 中,您可以使用 Suspense
將您的應用程式分解成更小的獨立單元,這些單元可以彼此獨立地串流傳輸,而不會阻塞應用程式的其餘部分。這表示使用者可以更快地看到您的內容,並更快地開始與之互動。
如需深入了解,請參閱 Shaundai Person 的演講
第一個 React 工作組
對於 React 18,我們成立了第一個工作組,與專家、開發人員、函式庫維護人員和教育工作者小組合作。我們共同制定了逐步採用策略,並改進了新的 API,例如 useId
、useSyncExternalStore
和 useInsertionEffect
。
有關這項工作的概述,請參閱 Aakansha Doshi 的演講
React 開發工具
為了支援此版本中的新功能,我們還宣布了新成立的 React DevTools 團隊和新的時間軸分析器,以協助開發人員除錯他們的 React 應用程式。
如需詳細資訊和新 DevTools 功能的示範,請參閱 Brian Vaughn 的演講
沒有使用 memo 的 React
展望未來,黃玄 (Xuan Huang) 分享了我們 React Labs 關於自動記憶體化編譯器的最新研究成果。觀看此演講以了解更多資訊以及編譯器原型的演示。
React 文件主題演講
Rachel Nabors 以關於我們投資 React 新文件(現已發布為 react.dev)的主題演講,開啟了一系列關於學習和使用 React 設計的演講。
以及更多…
我們也聽到了一些關於學習和使用 React 設計的演講。
- Debbie O’Brien:我從新的 React 文件中学到的东西。
- Sarah Rainsberger:在瀏覽器中學習。
- Linton Ye:使用 React 設計的投資報酬率。
- Delba de Oliveira:使用 React 建立互動式遊樂場。
來自 Relay、React Native 和 PyTorch 團隊的演講
- Robert Balicki:重新介紹 Relay。
- Eric Rozell 和 Steven Moyes:React Native 桌面應用程式。
- Roman Rädle:React Native 的裝置上機器學習
以及來自社群關於無障礙、工具和伺服器組件的演講
- Daishi Kato:React 18 的外部狀態庫。
- Diego Haz:在 React 18 中構建無障礙組件。
- Tafu Nakazaki:使用 React 建立無障礙日文表單組件。
- Lyle Troxell:藝術家的 UI 工具。
- Helen Lin:Hydrogen + React 18。
謝謝
這是我們第一年自行規劃會議,我們要感謝很多人。
首先,感謝我們所有的講者:Aakansha Doshi、Andrew Clark、Brian Vaughn、Daishi Kato、Debbie O’Brien、Delba de Oliveira、Diego Haz、Eric Rozell、Helen Lin、Juan Tejada、Lauren Tan、Linton Ye、Lyle Troxell、Rachel Nabors、Rick Hanlon、Robert Balicki、Roman Rädle、Sarah Rainsberger、Shaundai Person、Shruti Kapoor、Steven Moyes、Tafu Nakazaki,以及 黃玄 (Xuan Huang)。
感謝所有協助提供演講意見回饋的人,包括 Andrew Clark、Dan Abramov、Dave McCabe、Eli White、Joe Savona、Lauren Tan、Rachel Nabors 以及 Tim Yung。
感謝 Lauren Tan 建立會議 Discord 並擔任我們的 Discord 管理員。
感謝 Seth Webster 針對整體方向提供意見回饋,並確保我們關注多元化和包容性。
感謝 Rachel Nabors 帶領我們的協調工作,以及 Aisha Blake 制定我們的協調指南、領導我們的協調團隊、培訓翻譯和協調員,並協助協調這兩場活動。
感謝我們的協調員 Jesslyn Tannady、Suzie Grange、Becca Bailey、Luna Wei、Joe Previte、Nicola Corti、Gijs Weterings、Claudio Procida、Julia Neumann、Mengdi Chen、Jean Zhang、Ricky Li 以及 黃玄 (Xuan Huang)。
感謝來自 React India 的 Manjula Dube、Sahil Mhapsekar 和 Vihang Patel,以及來自 React China 的 Jasmine Xie、李啟昌 (QiChang Li) 和 李延倫 (YanLun Li) 協助我們協調重播活動,並使其保持社群參與度。
感謝 Vercel 發布他們的 線上活動入門套件 (Virtual Event Starter Kit),本次會議網站便是以此套件建構;也感謝 Lee Robinson 和 Delba de Oliveira 分享他們舉辦 Next.js Conf 的經驗。
感謝 Leah Silber 分享她舉辦會議的經驗、舉辦 RustConf 的心得,以及她的著作《Event Driven》和書中關於舉辦會議的建議。
感謝 Kevin Lewis 和 Rachel Nabors 分享他們舉辦 Women of React Conf 的經驗。
感謝 Aakansha Doshi、Laurie Barth、Michael Chan 和 Shaundai Person 在整個規劃過程中提供的建議和想法。
感謝 Dan Lebowitz 協助設計和建置會議網站和門票。
感謝 Laura Podolak Waddell、Desmond Osei-Acheampong、Mark Rossi、Josh Toberman 以及 Facebook 影片製作團隊的其他成員為主題演講和 Meta 員工演講錄製影片。
感謝我們的合作夥伴 HitPlay 協助籌辦會議、剪輯串流中的所有影片、翻譯所有演講,並以多種語言協調 Discord。
最後,感謝所有參與者,讓這次的 React Conf 圓滿成功!