|
Der Fokus liegt hier auf this.props.children. Durch this.props.children können wir unsere Komponenten leicht kohäsionsarm machen. In der tatsächlichen Entwicklung stoßen wir häufig auf Anzeigekomponenten, die mit reinen Komponenten geschrieben wurden, und auf Containerkomponenten, die weiterhin Daten verarbeiten. Verwenden Sie hier einfach this.props.children, um diese Containerkomponenten abzudecken. Anschließend kann die eingeschlossene Containerkomponente gemäß den oben genannten Regeln weiterhin einen neuen Ordner erstellen und index.js verfügbar machen.
Der größte Vorteil dieser Schreibweise besteht darin, dass Sie schnell herausfinden können, wo sich die von Ihnen geschriebene Komponente befindet, was sie bewirkt und welche Auswirkungen sie hat.
3. Einweg-Datenfluss von oben nach unten
Wenn wir entwerfen müssen, um die oben genannten Bedingungen zu erfüllen, können wir durch die Verwendung eines Einweg-Datenflusses von oben nach unten derzeit einige Statusverwaltungstools wie Redux verwenden , der Einflussbereich ist besser kontrollierbar und ShouldComponentUpdate wird verwendet, um unnötiges Rendern zu reduzieren. (Aber es ist wirklich mühsam, auf diese Weise zu schreiben, aber React verwendet ab Version 16.3 die neue Lebenszyklusfunktion getDerivedStateFromProps, um Entwickler zu zwingen, diesen Schritt zu optimieren.)
4. Kontrollierte Komponenten und unkontrollierte Komponenten
Es gibt viele Webkomponenten durch Benutzerinteraktion geändert werden, wie zum Beispiel: 7a7276301a860ea402f6bdc1f67f4471, 9b3434c63473c9efb2ff33459232deae. Diese Komponenten können den Wert der Komponente ändern, indem sie Inhalte eingeben oder das Wertattribut des Elements festlegen. Da React jedoch an einen einseitigen Datenfluss gebunden ist, können diese Komponenten außer Kontrolle geraten:
1. Eine 0d8d8502ad9fc5bd029f7f31e30fdff5-Komponente, die den Wert in ihrem eigenen Zustand beibehält, kann nicht von außen geändert werden
2. Eine 0d8d8502ad9fc5bd029f7f31e30fdff5 ;Eingabe> Die zum Festlegen des Werts verwendete Komponente 7a7276301a860ea402f6bdc1f67f4471 kann nur durch externe Steuerung aktualisiert werden.
Kontrollierte Komponente:
Eine kontrollierte 7a7276301a860ea402f6bdc1f67f4471 sollte ein Wertattribut haben. Beim Rendern einer gesteuerten Komponente wird der Wert des Wertattributs angezeigt.
Eine kontrollierte Komponente behält ihren eigenen internen Zustand nicht bei und die Darstellung der Komponente hängt ausschließlich von Requisiten ab. Mit anderen Worten: Wenn wir eine 7a7276301a860ea402f6bdc1f67f4471-Komponente haben, die den Wert über Requisiten festlegt, wird unabhängig von der Eingabe nur props.value angezeigt. Mit anderen Worten: Ihre Komponente ist schreibgeschützt.
Wenn Sie mit einer gesteuerten Komponente arbeiten, sollten Sie immer ein Wertattribut übergeben und eine onChange-Rückruffunktion registrieren, um die Komponente variabel zu machen.
Unkontrollierte Komponente:
Eine 7a7276301a860ea402f6bdc1f67f4471 ist eine unkontrollierte Komponente. Durch gerenderte Elemente wird jede Benutzereingabe sofort wiedergegeben. Unkontrollierte 7a7276301a860ea402f6bdc1f67f4471 kann nur die obere Ebene über vom Benutzer eingegebene Änderungen über die OnChange-Funktion benachrichtigen.
#### Hybridkomponente:
Behalten Sie die Werte von props.value und state.value gleichzeitig bei. props.value hat bei der Anzeige eine höhere Priorität und state.value repräsentiert den tatsächlichen Wert der Komponente.
5. Verwenden Sie Komponenten höherer Ordnung (HOC)
Einfache Definition: eine Funktion, die eine Reaktionskomponente als Parameter empfängt und eine andere Komponente zurückgibt.
Was kann getan werden: Code-Wiederverwendung, Code-Modularisierung, Hinzufügen, Löschen und Ändern von Requisiten.
Anwendungsfälle: Wenn das Unternehmen beispielsweise plötzlich verschiedene Klickpunkte im Front-End-Code vergraben möchte, kann es hoc verwenden, um einen davon zu packen Ohne den ursprünglichen Code zu ändern, muss der gesamte Code gleichzeitig vorgenommen werden.
6. Standardprozess zum Hinzufügen, Löschen, Ändern und Überprüfen
Hinzufügen: Daten eingeben, Daten überprüfen, Daten einfügen und die Datenliste erneut abfragen.
Löschen: Bestätigen Sie das Löschen und fragen Sie die Datenliste erneut ab.
Überprüfen: Datenliste abfragen, im Paging anzeigen
Ändern: Daten eingeben, Daten überprüfen, Daten ändern, Datenliste erneut abfragen
Tatsächlich ist beim Entwerfen von Komponenten keine vorzeitige Komponentisierung erforderlich. Wir können zunächst schnell eine Version schreiben und diese dann entsprechend dem tatsächlichen Entwurf aufteilen, um schnelle Änderungen der Anforderungen in den frühen Phasen des Projekts bewältigen zu können. Dann ändern wir unser Projekt Stück für Stück entsprechend dem Designmuster. Solange das Designmuster einigermaßen aufgeteilt ist, ist es eigentlich eine sehr glatte und natürliche Sache.
Weitere Kenntnisse zum Thema Programmierung finden Sie unter: Programmiervideos! !