使用框架來建構 React Native 應用程式
在 React Conf 上,我們更新了關於開始建構 React Native 應用程式的最佳工具的指南:一個 React Native 框架 - 一個工具箱,其中包含所有必要的 API,讓您建構可投入生產環境的應用程式。
現在,使用 React Native 框架(例如 Expo)是建立新應用程式的建議方法。
在這篇部落格文章中,我們想帶您詳細了解它們是什麼,以及對於剛開始新專案的 React Native 開發者而言,它們意味著什麼。
什麼是 React Native 框架?
如果您一直在建構可投入生產環境的應用程式,您可能知道您遲早需要解決一組常見問題。
當在網頁或原生平台上建構任何應用程式時,您可能希望使用者能夠瀏覽不同的畫面、提取資料並儲存使用者的狀態。但是對於原生應用程式,還有更多需要處理的事情:您需要工具來升級 React Native 版本之間的原生程式碼、管理所有依賴項的相容版本以及處理原生建構工具。
將應用程式從構想轉變為生產環境需要眾人之力,如果沒有正確的工具。
我們希望您專注於為您的使用者編寫美觀的應用程式和功能,而不是一遍又一遍地解決這些常見問題。
這就是為什麼我們認為,體驗 React Native 的最佳方式是透過框架,該框架提供一個工具箱,其中包含您建構可投入生產環境的應用程式所需的所有必要工具。
我們發現您要么正在使用框架,要么正在建構自己的框架。
建構自己的框架沒有什麼問題,透過為路由、導航、部署等製作自己的解決方案。像 Meta 和 Microsoft 這樣的大型企業會在內部建構自己的框架,以深入整合到他們的棕地應用程式中。但我們相信,大多數人最好使用現有的框架。
如果您一直在網頁上使用 React,您可能熟悉 生產級 React 框架 的類似概念。
截至今天,唯一推薦的 React Native 社群框架是 Expo。Expo 的人們自 React Native 的早期就一直在投資 React Native 生態系統,並且截至今天,我們相信 Expo 提供的開發者體驗是同類最佳的。
框架 Expo 現在和將來都將保持免費和開源,而 Expo 應用程式服務 (EAS) 是一項可選的付費服務。
如果您最近沒有使用過 Expo,請確保您不要錯過 Kadi @ Expo 的這個演講,她在其中展示了 2024 年您可以使用 Expo 做什麼。
我們也更新了網站上的 開始使用頁面,以反映此建議。
框架將如何影響您?
如果您已經在使用推薦的框架(例如 Expo),那麼您已經準備就緒!
如果您想將現有的應用程式遷移到 Expo,您可以在 官方 Expo 網站上找到說明。Expo 提供了許多好處,例如更輕鬆地 升級您的 React Native 版本、更好的開發者體驗等等。
但是,如果您不能或不想遷移到 Expo,那也沒關係。不使用官方框架的 React Native 將繼續受到支援。您一直在使用的工具(例如 React Native Community CLI、Template 和 Upgrade Helper)將像往常一樣繼續運作。
react-native init
命令已移出核心,現在可以透過以下方式存取
npx @react-native-community/cli@latest init
以及在 GitHub 上的 react-native-community/cli。
如果您是 React Native 函式庫開發者,我們收集了一份關於要使用哪些 API 的建議清單。請在 RFC 中閱讀更多內容。
延伸閱讀
如果您有興趣了解此決策背後的理由,我們邀請您閱讀 RFC0759:React Native 框架。此 RFC 是經過數月努力的成果,其中包括 React Native 生態系統中不同合作夥伴和參與者之間無數次的討論和腦力激盪。
雖然今天 Expo 是唯一推薦的框架,但 RFC 也包含關於 如何成為推薦框架的指南,因為我們希望看到這個領域有更多的競爭和創新。
此外,您應該查看 App.js 2024 上的演講 useFrameworks(),我們在其中以簡短的形式介紹了此 RFC 和必要的變更。
我們相信,透過釐清 React Native Core 和框架各自的職責,我們可以促進更健康的生態系統,並推動 React Native 的成長與創新。