Przejdź do treści głównej
Wersja: 0.80

Dodatek

Nieoficjalne Tłumaczenie Beta

Ta strona została przetłumaczona przez PageTurner AI (beta). Nie jest oficjalnie zatwierdzona przez projekt. Znalazłeś błąd? Zgłoś problem →

I. Terminologia

  • Spec - Kod TypeScript lub Flow opisujący API modułów Turbo Native lub komponentów Fabric Native. Używany przez Codegen do generowania kodu szablonowego.

  • Native Modules - Biblioteki natywne bez interfejsu użytkownika (UI). Przykłady: trwała pamięć, powiadomienia, zdarzenia sieciowe. Dostępne w kodzie JavaScript aplikacji jako funkcje i obiekty.

  • Native Component - Widoki natywne platformy dostępne w kodzie JavaScript aplikacji poprzez komponenty React.

  • Legacy Native Components - Komponenty działające w starej architekturze React Native.

  • Legacy Native Modules - Moduły działające w starej architekturze React Native.

II. Typy w Codegen

Poniższa tabela służy jako odniesienie do obsługiwanych typów i ich mapowania na poszczególne platformy:

FlowTypeScriptFlow Nullable SupportTypeScript Nullable SupportAndroid (Java)iOS (ObjC)
stringstring?stringstring | nullstringNSString
booleanboolean?booleanboolean | nullBooleanNSNumber
Object Literal
{| foo: string, ...|}
{ foo: string, ...} as const?{| foo: string, ...|}?{ foo: string, ...} as const--
Object [1]Object [1]?ObjectObject | nullReadableMap@ (untyped dictionary)
Array<T>Array<T>?Array<T>Array<T> | nullReadableArrayNSArray (or RCTConvertVecToArray when used inside objects)
FunctionFunction?FunctionFunction | null--
Promise<T>Promise<T>?Promise<T>Promise<T> | nullcom.facebook.react.bridge.PromiseRCTPromiseResolve and RCTPromiseRejectBlock
Type Unions
'SUCCESS'|'FAIL'
Type Unions
'SUCCESS'|'FAIL'
Only as callbacks--
Callbacks
() =>
Callbacks
() =>
Yescom.facebook.react.bridge.CallbackRCTResponseSenderBlock
numbernumberNodoubleNSNumber

Uwagi:

[1] We strongly recommend using Object literals instead of Objects.

informacja

Warto również zapoznać się ze specyfikacjami JavaScript podstawowych modułów w React Native. Znajdują się one w katalogu Libraries/ repozytorium React Native.