2017-10-18 2 views
15

ich nicht zu ändern Anfangs Requisiten:Einstellung rootView.appProperties nicht neu rendern Wurzelkomponente

RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation 
                 moduleName:@"DcWealth" 
               initialProperties:nil 
                launchOptions:launchOptions]; 

self.rootView = rootView; 

Speichern nur die Instanz self.rootView = rootView

und nach ein Ereignis auf nativer Seite passiert, ich möchte verschiedene Requisiten zu passieren:

self.rootView.appProperties = @{ ... }; 

aber meine root-Ansicht nicht neu rendern und neue Requisiten bekommen. (Es tut, wenn ich manuell die JS nachladen)

docs sagen, dass:

Es ist in Ordnung Eigenschaften jederzeit zu aktualisieren. Aktualisierungen müssen jedoch im Hauptthread durchgeführt werden.

Ich überprüft und ich aktualisiere Eigenschaften auf Hauptgewinde.

Was könnte dieses Problem verursachen?

Verwandte Github Ausgabe: https://github.com/facebook/react-native/issues/15938

Antwort

0

Ich konnte dieses Problem nicht beheben, es scheint ein Fehler zu sein.

Also habe ich gerade den Js-Code-Initialisierungsteil von didFinishLaunchingWithOptions in den Body des Event-Handlers verschoben, auf den ich gewartet habe.

Also im Grunde initiiere ich reaktions-native App nur, nachdem das native Ereignis passiert. Das ist eher ein Hack als eine Lösung, aber es hat für mich funktioniert.

0

Erscheint ein Fehler aus der Ausgabe werden Ihnen geteilt. Und die Arbeit, nach der Sie suchen, scheint auch in das Problem aufgenommen worden zu sein.

enter image description here

Ich nehme an, Sie diesen Ansatz bereits versucht? Leider gibt es vielleicht keine bessere Arbeit.

Verwandte Themen