メインコンテンツへスキップ

付録

I. 用語集

  • Spec - Turbo Native Module または Fabric Native Component の API を記述する TypeScript または Flow のコードです。Codegen によってボイラープレートコードを生成するために使用されます。

  • Native Modules - ユーザー向けのユーザーインターフェース (UI) を持たないネイティブライブラリです。例としては、永続ストレージ、通知、ネットワークイベントなどが挙げられます。これらは、JavaScriptアプリケーションコードから関数やオブジェクトとしてアクセスできます。

  • Native Component - Reactコンポーネントを通じてアプリケーションのJavaScriptコードから利用できるネイティブプラットフォームのビューです。

  • Legacy Native Components - 古いReact Nativeアーキテクチャで実行されているコンポーネントです。

  • Legacy Native Modules - 古いReact Nativeアーキテクチャで実行されているモジュールです。

II. Codegenの型付け

以下の表を、サポートされている型と各プラットフォームで何にマッピングされるかの参照として使用できます。

FlowTypeScriptFlow Nullable サポートTypeScript Nullable サポートAndroid (Java)iOS (ObjC)
stringstring?stringstring | nullstringNSString
booleanboolean?booleanboolean | nullBooleanNSNumber
オブジェクトリテラル
{| foo: string, ...|}
{ foo: string, ...} as const?{| foo: string, ...|}?{ foo: string, ...} as const--
Object [1]Object [1]?ObjectObject | nullReadableMap@ (型付けされていない辞書)
Array<T>Array<T>?Array<T>Array<T> | nullReadableArrayNSArray (またはオブジェクト内で使用される場合は RCTConvertVecToArray)
FunctionFunction?FunctionFunction | null--
Promise<T>Promise<T>?Promise<T>Promise<T> | nullcom.facebook.react.bridge.PromiseRCTPromiseResolveRCTPromiseRejectBlock
Union型
'SUCCESS'|'FAIL'
Union型
'SUCCESS'|'FAIL'
コールバックとしてのみ--
コールバック
() =>
コールバック
() =>
はいcom.facebook.react.bridge.CallbackRCTResponseSenderBlock
numbernumberNodoubleNSNumber

注釈:

[1] Objectの代わりにオブジェクトリテラルを使用することを強く推奨します。

info

React NativeのコアモジュールのJavaScript仕様を参照することも役立つ場合があります。これらはReact Nativeリポジトリの Libraries/ ディレクトリ内にあります。