詞彙表
開發人員選單
應用程式內開發人員選單(在開發版本中可用),提供存取各種開發和偵錯操作的功能。在文件中瞭解更多關於開發人員選單的資訊。
Fabric 渲染器
React Native 執行與網頁版 React 相同的 React 框架程式碼。然而,React Native 渲染到一般平台視圖(宿主視圖)而不是 DOM 節點(可以被視為網頁的宿主視圖)。渲染到宿主視圖是由 Fabric 渲染器實現的。Fabric 讓 React 與每個平台溝通並管理其宿主視圖實例。Fabric 渲染器存在於 JavaScript 中,並以 C++ 程式碼提供的介面為目標。在這篇部落格文章中閱讀更多關於 React 渲染器的資訊。
宿主平台
嵌入 React Native 的平台(例如,Android、iOS、macOS、Windows)。
宿主視圖樹(與宿主視圖)
宿主平台中視圖的樹狀結構表示(例如,Android、iOS)。在 Android 上,宿主視圖是 android.view.ViewGroup
、android.widget.TextView
等的實例,它們是宿主視圖樹的建構塊。每個宿主視圖的大小和位置都基於 Yoga 計算的 LayoutMetrics
,而每個宿主視圖的樣式和內容都基於來自 React Shadow Tree 的資訊。
JavaScript 介面 (JSI)
一個輕量級 API,用於在 C++ 應用程式中嵌入 JavaScript 引擎。Fabric 使用它在 Fabric 的 C++ 核心和 React 之間進行溝通。
Java 本地介面 (JNI)
一個 API,用於編寫 Java 本地方法,用於在 Fabric 的 C++ 核心和 Android 之間進行溝通,以 Java 編寫。
React 組件
一個 JavaScript 函數或類別,用於指示如何建立 React 元素。在這篇部落格文章中閱讀更多關於 React 組件、元素的資訊。
React 複合組件
具有 render
實作的 React 組件,這些實作會簡化為其他 React 複合組件或 React 宿主組件。
React 宿主組件或宿主組件
視圖實作由宿主視圖提供的 React 組件(例如,<View>
、<Text>
)。在網頁上,ReactDOM 的宿主組件將會是像 <p>
和 <div>
這樣的組件。
React 元素樹(與 React 元素)
React 元素樹 由 React 在 JavaScript 中建立,並由 React 元素組成。React 元素 是一個純 JavaScript 物件,描述應該在螢幕上顯示什麼。它包含 props、樣式和 children。React 元素僅存在於 JavaScript 中,並且可以表示 React 複合組件或 React 宿主組件的實例。在這篇部落格文章中閱讀更多關於 React 組件和元素的資訊。
React Native 框架
React Native 允許開發人員使用 React 程式設計範例 將應用程式發佈到原生目標。React Native 團隊專注於創建核心 API 和功能,以適應開發原生應用程式時最常見的用例。
將原生應用程式發佈到生產環境通常需要一組工具和函式庫,這些工具和函式庫預設不作為 React Native 的一部分提供,但對於將應用程式發佈到生產環境仍然至關重要。此類工具的範例包括:支援將應用程式發佈到專用商店或支援路由和導航機制。
當這些工具和函式庫被收集起來,形成一個建立在 React Native 之上的有凝聚力的框架時,我們將其定義為 React Native 框架。
開源 React Native 框架的一個範例是 Expo。
React Shadow Tree(與 React Shadow Node)
React Shadow Tree 由 Fabric 渲染器建立,並由 React Shadow Node 組成。React Shadow Node 是一個物件,表示要掛載的 React 宿主組件,並包含源自 JavaScript 的 props。它們還包含佈局資訊(x、y、寬度、高度)。在 Fabric 中,React Shadow Node 物件存在於 C++ 中。在 Fabric 之前,這些物件存在於行動運行時堆積中(例如 Android JVM)。
Yoga Tree(與 Yoga Node)
Yoga Tree 由 Yoga 使用,用於計算 React Shadow Tree 的佈局資訊。每個 React Shadow Node 通常會建立一個 Yoga Node,因為 React Native 使用 Yoga 來計算佈局。然而,這不是一個硬性要求。Fabric 也可以建立不使用 Yoga 的 React Shadow Node;每個 React Shadow Node 的實作決定了如何計算佈局。