Programmgesteuert fügt eine Komponente in React Native hinzu

8

Angenommen, ich habe eine einfache React Native App wie folgt:

%Vor%

Wie kann ich dynamisch eine Komponente zwischen den ersten und zweiten Text -Tags einfügen, wenn TouchableHighlight gedrückt wird?

    
Axeva 18.02.2016, 02:51
quelle

4 Antworten

11

Versuchen Sie, ein Array zu erstellen und es an den Status anzuhängen. Sie können dann Elemente in das Array schieben und den Status zurücksetzen.

Ссылка

%Vor%

Ich habe ein funktionierendes Beispiel hier eingerichtet.

    
Nader Dabit 18.02.2016, 02:57
quelle
3

In reagieren oder reagieren native die Art und Weise, die Komponente verstecken / anzeigen oder hinzufügen / entfernen funktioniert nicht wie in Android oder iOS. Die meisten von uns denken, dass es ähnliche Strategien wie

geben würde
  

View.hide = true oder parentView.addSubView (childView

Aber die Art und Weise, native Arbeit zu reagieren, ist völlig anders. Der einzige Weg, um diese Art von Funktionalität zu erreichen, besteht darin, Ihre Komponente in Ihr DOM aufzunehmen oder aus dem DOM zu entfernen.

Hier in diesem Beispiel werde ich die Sichtbarkeit der Textansicht basierend auf dem Klick auf die Schaltfläche einstellen.

Bildbeschreibung hier eingeben

Die Idee hinter dieser Aufgabe ist die Erstellung einer Statusvariablen mit dem Namen state, bei der der Anfangswert auf false gesetzt ist, wenn das Klickereignis auf die Schaltfläche trifft und dann der Wert wechselt. Jetzt werden wir diese Statusvariable während der Erstellung der Komponente verwenden.

%Vor%

Das Einzige, was in diesem Snippet zu bemerken ist, ist renderIf, was eigentlich eine Funktion ist, die die übergebene Komponente basierend auf dem booleschen Wert zurückgibt, der an sie übergeben wurde.

renderIf (Prädikat) (Element).

  

renderif.js

%Vor%     
Rajan Twanabashu 27.06.2016 10:16
quelle
1

Mit React-Komponenten möchten Sie nicht an Aktionen denken, die in das DOM hineinreichen und Komponenten einfügen - Sie möchten Komponenten als Reaktion auf Aktionen betrachten. Theoretisch ist diese Komponente bereits zusammengesetzt und bereit, sie muss nur wissen, ob sie gerendert werden soll oder nicht:

%Vor%

Ich habe auch einen Helfer gemacht, der es einfach macht, Dinge zu rendern, render-if

%Vor%     
Atticus 18.02.2016 02:55
quelle
1

ECMA6 Syntax

%Vor%     
Abhishek Kumar 21.03.2017 09:49
quelle

Tags und Links