IReactContext
Neue Architektur
Typ: interface
Das IReactContext-Objekt ist ein schwacher Zeiger auf die React-Instanz. Es ermöglicht nativen Modulen und View-Managern, mit der Anwendung und mit anderen nativen Modulen und View-Managern zu kommunizieren. Da der IReactContext ein schwacher Zeiger auf die React-Instanz ist, wird ein Teil seiner Funktionalität unzugänglich, nachdem die React-Instanz entladen wurde. Wenn eine React-Instanz innerhalb des ReactNativeHost neu geladen wird, wird die vorherige React-Instanz entladen und dann eine neue React-Instanz mit einer neuen IReactContext erstellt.
- Verwenden Sie die
Properties, um Daten nativer Module mit anderen Komponenten zu teilen. - Verwenden Sie die
Notifications, um Ereignisse mit anderen Komponenten auszutauschen. - Verwenden Sie
CallJSFunction, um JavaScript-Funktionen aufzurufen, undEmitJSEvent, um JavaScript-Ereignisse auszulösen. - Verwenden Sie
UIDispatcher, um asynchrone Arbeiten im UI-Thread zu posten. - Verwenden Sie
JSDispatcher, um asynchrone Arbeiten im Thread der JavaScript-Engine zu posten.
Eigenschaften
CallInvoker
readonly CallInvoker CallInvoker
Wird verwendet, um Arbeiten in der JS-Runtime zu planen. Die direkteste Verwendung hiervon sollte durch die Verwendung von ReactContext.CallInvoker vermieden werden.
JSDispatcher
readonly IReactDispatcher JSDispatcher
Veraltet: Verwenden Sie stattdessen
IReactContext.CallInvoker
Ruft den Dispatcher für den JavaScript-Engine-Thread ab. Dies ist eine Abkürzung für die ReactDispatcherHelper.JSDispatcherProperty aus dem Properties-Eigenschaftenbeutel.
JSRuntime
readonly Object JSRuntime
Ruft die JavaScript-Runtime für die laufende React-Instanz ab. Sie kann null sein, wenn das Web-Debugging verwendet wird. **Hinweis: Verwenden Sie diese Eigenschaft nicht direkt. Dies ist eine experimentelle Eigenschaft, die in einer zukünftigen Version entfernt wird. Veraltet für die neue Architektur: Verwenden Sie stattdessen IReactContext.CallInvoker.
LoadingState
readonly LoadingState LoadingState
Ruft den Zustand der ReactNative-Instanz ab.
Notifications
readonly IReactNotificationService Notifications
Ruft den IReactNotificationService ab, der mit den ReactInstanceSettings.Notifications geteilt wird. Er kann verwendet werden, um Benachrichtigungsereignisse zwischen Komponenten und der Anwendung zu senden. Alle Benachrichtigungsabonnements, die zu IReactContext.Notifications hinzugefügt wurden, werden automatisch entfernt, nachdem der IReactContext zerstört wurde. Die Benachrichtigungsabonnements, die zu den ReactInstanceSettings.Notifications hinzugefügt wurden, bleiben erhalten, solange die ReactInstanceSettings aktiv sind.
Properties
readonly IReactPropertyBag Properties
Ruft den IReactPropertyBag ab, der mit den ReactInstanceSettings.Properties geteilt wird. Er kann verwendet werden, um Werte und Zustände zwischen Komponenten und Anwendungen zu teilen.
SettingsSnapshot
readonly IReactSettingsSnapshot SettingsSnapshot
Ruft den Einstellungen-Snapshot ab, der zum Starten der React-Instanz verwendet wurde.
UIDispatcher
readonly IReactDispatcher UIDispatcher
Ruft den Dispatcher für den UI-Thread ab. Dies ist eine Abkürzung für die ReactDispatcherHelper.UIDispatcherProperty aus dem Properties-Eigenschaftenbeutel.
Methoden
CallJSFunction
void CallJSFunction(string moduleName, string methodName, JSValueArgWriter paramsArgWriter)
Ruft die JavaScript-Funktion mit dem Namen methodName des Moduls moduleName mit dem paramsArgWriter auf. Der paramsArgWriter ist ein JSValueArgWriter-Delegate, der IJSValueWriter zum Serialisieren der Methodenparameter empfängt.
EmitJSEvent
void EmitJSEvent(string eventEmitterName, string eventName, JSValueArgWriter paramsArgWriter)
Löst das JavaScript-Modulereignis eventName für den eventEmitterName mit dem paramsArgWriter aus. Dies ist ein spezialisierter Aufruf von CallJSFunction, bei dem der Methodenname immer emit ist und der eventName zu den Parametern hinzugefügt wird. Der paramsArgWriter ist ein [JSValueArgWriter](JSValueArgWriter)-Delegate, der [IJSValueWriter](IJSValueWriter) zum Serialisieren der Ereignisparameter empfängt.
Referenziert von
ComponentViewIReactViewInstanceInitializerDelegateInstanceCreatedEventArgsInstanceDestroyedEventArgsInstanceLoadedEventArgsJsiInitializerDelegateReactCoreInjectionReactNativeHostXamlUIService
Alte Architektur
Typ: interface
Das IReactContext-Objekt ist ein schwacher Zeiger auf die React-Instanz. Es ermöglicht nativen Modulen und View-Managern, mit der Anwendung und mit anderen nativen Modulen und View-Managern zu kommunizieren. Da der IReactContext ein schwacher Zeiger auf die React-Instanz ist, wird ein Teil seiner Funktionalität unzugänglich, nachdem die React-Instanz entladen wurde. Wenn eine React-Instanz innerhalb des ReactNativeHost neu geladen wird, wird die vorherige React-Instanz entladen und dann eine neue React-Instanz mit einer neuen IReactContext erstellt.
- Verwenden Sie die
Properties, um Daten nativer Module mit anderen Komponenten zu teilen. - Verwenden Sie die
Notifications, um Ereignisse mit anderen Komponenten auszutauschen. - Verwenden Sie
CallJSFunction, um JavaScript-Funktionen aufzurufen, undEmitJSEvent, um JavaScript-Ereignisse auszulösen. - Verwenden Sie
UIDispatcher, um asynchrone Arbeiten im UI-Thread zu posten. - Verwenden Sie
JSDispatcher, um asynchrone Arbeiten im Thread der JavaScript-Engine zu posten.
Properties
CallInvoker
readonly CallInvoker CallInvoker
Wird verwendet, um Arbeiten in der JS-Runtime zu planen. Die direkteste Verwendung hiervon sollte durch die Verwendung von ReactContext.CallInvoker vermieden werden.
JSDispatcher
readonly IReactDispatcher JSDispatcher
Veraltet: Verwenden Sie stattdessen
IReactContext.CallInvoker
Ruft den Dispatcher für den JavaScript-Engine-Thread ab. Dies ist eine Abkürzung für die ReactDispatcherHelper.JSDispatcherProperty aus dem Properties-Eigenschaftenbeutel.
JSRuntime
readonly Object JSRuntime
Ruft die JavaScript-Runtime für die laufende React-Instanz ab. Sie kann null sein, wenn das Web-Debugging verwendet wird. **Hinweis: Verwenden Sie diese Eigenschaft nicht direkt. Dies ist eine experimentelle Eigenschaft, die in einer zukünftigen Version entfernt wird. Veraltet für die neue Architektur: Verwenden Sie stattdessen IReactContext.CallInvoker.
LoadingState
readonly LoadingState LoadingState
Ruft den Zustand der ReactNative-Instanz ab.
Notifications
readonly IReactNotificationService Notifications
Ruft den IReactNotificationService ab, der mit den ReactInstanceSettings.Notifications geteilt wird. Er kann verwendet werden, um Benachrichtigungsereignisse zwischen Komponenten und der Anwendung zu senden. Alle Benachrichtigungsabonnements, die zu IReactContext.Notifications hinzugefügt wurden, werden automatisch entfernt, nachdem der IReactContext zerstört wurde. Die Benachrichtigungsabonnements, die zu den ReactInstanceSettings.Notifications hinzugefügt wurden, bleiben erhalten, solange die ReactInstanceSettings aktiv sind.
Properties
readonly IReactPropertyBag Properties
Ruft den IReactPropertyBag ab, der mit den ReactInstanceSettings.Properties geteilt wird. Er kann verwendet werden, um Werte und Zustände zwischen Komponenten und Anwendungen zu teilen.
SettingsSnapshot
readonly IReactSettingsSnapshot SettingsSnapshot
Ruft den Einstellungen-Snapshot ab, der zum Starten der React-Instanz verwendet wurde.
UIDispatcher
readonly IReactDispatcher UIDispatcher
Ruft den Dispatcher für den UI-Thread ab. Dies ist eine Abkürzung für die ReactDispatcherHelper.UIDispatcherProperty aus dem Properties-Eigenschaftenbeutel.
Methoden
CallJSFunction
void CallJSFunction(string moduleName, string methodName, JSValueArgWriter paramsArgWriter)
Ruft die JavaScript-Funktion mit dem Namen methodName des Moduls moduleName mit dem paramsArgWriter auf. Der paramsArgWriter ist ein JSValueArgWriter-Delegate, der IJSValueWriter zum Serialisieren der Methodenparameter empfängt.
DispatchEvent
void DispatchEvent(FrameworkElement view, string eventName, JSValueArgWriter eventDataArgWriter)
Veraltet: Verwenden Sie stattdessen
XamlUIService.DispatchEvent
Veraltete Eigenschaft. Verwenden Sie stattdessen XamlUIService.DispatchEvent. Sie wird in einer zukünftigen Version entfernt.
EmitJSEvent
void EmitJSEvent(string eventEmitterName, string eventName, JSValueArgWriter paramsArgWriter)
Löst das JavaScript-Modulereignis eventName für den eventEmitterName mit dem paramsArgWriter aus. Dies ist ein spezialisierter Aufruf von CallJSFunction, bei dem der Methodenname immer emit ist und der eventName zu den Parametern hinzugefügt wird. Der paramsArgWriter ist ein [JSValueArgWriter](JSValueArgWriter)-Delegate, der [IJSValueWriter](IJSValueWriter) zum Serialisieren der Ereignisparameter empfängt.