Heim >Web-Frontend >Front-End-Fragen und Antworten >Hat React eine bidirektionale Bindung?

Hat React eine bidirektionale Bindung?

WBOY
WBOYOriginal
2022-04-21 10:24:312760Durchsuche

In React gibt es keine bidirektionale Bindung. Die Designidee von React ist ein einseitiger Datenfluss. Es gibt kein Konzept einer bidirektionalen Bindung Die übergeordnete Komponente wird über Requisiten mit der untergeordneten Komponente verbunden, was den Rendering-Anforderungen der Ansichtsebene entspricht und einfacher zu testen und zu steuern ist, sodass in React keine bidirektionale Bindung besteht.

Hat React eine bidirektionale Bindung?

Die Betriebsumgebung dieses Tutorials: Windows 10-System, Reaktionsversion 17.0.1, Dell G3-Computer.

Hat React eine bidirektionale Bindung

React hat keine bidirektionale Bindung

Die Designidee von React ist ein einseitiger Datenfluss. Ich denke, wir können verstehen, warum es keine bidirektionalen Daten gibt Bindung wie folgt:

Erstens ist React eine reine Ansichtsebene.

Was sind dann die Anforderungen für die bidirektionale Datenbindung für React? Offensichtlich eine Geschäftsanforderung. Da der unidirektionale Datenfluss bereits die Anforderungen des View-Layer-Renderings erfüllt und einfacher zu testen und zu steuern ist (über Props oder State), warum besteht in reinem React ein Bedarf für eine bidirektionale Datenbindung?

Wenn Sie das Problem der bidirektionalen Datenbindung lösen müssen, können Sie Bibliotheken von Drittanbietern wie rc-form von Ant Design verwenden. Je nach Bedarf können Sie es auch in State oder sogar Redux speichern.

Das Fehlen einer bidirektionalen Datenbindung in React ist also kein Mangel an Funktionalität oder ein Konfliktproblem, sondern dass React sich nur auf die Lösung eines reinen Problems konzentriert: der View-Ebene.

Einseitiger Datenfluss

Einseitiger Datenfluss bedeutet, dass der Datenfluss nur über Requisiten von der übergeordneten Komponente an die untergeordnete Komponente weitergeleitet werden kann und Daten nicht von der untergeordneten Komponente an die übergeordnete Komponente übergeben werden können Um eine bidirektionale Datenbindung zu erreichen, kann nur die untergeordnete Komponente die von den Requisiten der übergeordneten Komponente übergebene Methode empfangen, um die Daten der übergeordneten Komponente zu ändern, anstatt die Daten der untergeordneten Komponente direkt an die übergeordnete Komponente zu übergeben.

Tatsächlich gibt es in React kein Konzept der bidirektionalen Bindung. Jedes Mal, wenn wir die Seite und den Wert aktualisieren, müssen wir die angegebene API aufrufen, um sie auszulösen. In Vue müssen wir nur die V-Modell-Anweisung verwenden um es vollständig zu realisieren In vue Die Anweisungen in werden tatsächlich mithilfe des syntaktischen Zuckers mehrerer Ereignisse implementiert.

Empfohlenes Lernen: „Video-Tutorial reagieren

Das obige ist der detaillierte Inhalt vonHat React eine bidirektionale Bindung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Was macht React-Dom?Nächster Artikel:Was macht React-Dom?