2016-08-09 26 views
1

Ich war in diesem für Stunden .. Ich habe eine einfache Navigation Setup und ich versuche einfach, meine Standard-Szene anzuzeigen.React Native: Szene/Komponente nicht gerendert, wenn von renderScene zurückgegeben

Meine Hauptkomponente/App ist "myRN" w/c hat einfach eine Navigationskomponente.

Ich habe eine Standard-Szene in einer „MyScene“ Klasse Setup für meine Standard-Szene (Homepage) ist ..

Lustige Sache ist, wenn ich einfach machen> zurücks MyScene Klasse von meinem Haupt, der Szene wird gut angezeigt.

Aber wenn MyScene über die renderScene-Routine gerendert wird, wird MyScene nicht gerendert und die Ansicht ist leer, keine Fehler.

Siehe @ RNPLAY.org https://rnplay.org/apps/w5-GSQ

Wie Sie, ich habe eine Warnung während der switch-Anweisung genannt sehen wird, sicherstellen, dass die Aussage richtig aufgerufen wird.

renderScene(route,navigator){ 


switch(route.id){ 
    case 'A': 
    alert('routing to A'); 

     return(<MyScene title="My Scene A!" />); 
     break; 
    case 'B': 
    alert('routing to B '); 
     return(<MyScene title="My Scene B!" />); 
     break; 

    default: 
     return (<Text>Aha!</Text>); 


} 

TESTS: 1) Wenn ich Navigationsblock entfernen und einfach den Teil return() machen; Die Szene wird gut wiedergegeben, was beweist, dass die Aussage gültig ist.

2) der Fall A auf jeden Fall ausgelöst wird, weil ich die Benachrichtigung erhalten() .. aber irgendwie die Szene einfach nicht gemacht zu werden

gestampft.

Antwort

1

Sie müssen nur geschweifte Klammern um this.renderScenene(route, navigator) entfernen.

Hier ist ein funktionierendes Beispiel: https://rnplay.org/apps/Skxjuw

+0

ok, das funktioniert ... aber warum zum Teufel haben die curlies verursachen das Problem? ist nicht der PFEIL FUNC soll Curlies haben? sicherlich ist das Format() = {} .. warum wurde das plötzlich ein Problem? – BrownChiLD

Verwandte Themen