Heim > Web-Frontend > js-Tutorial > Hauptteil

Was ist reagieren? Was macht React hauptsächlich? (Fragen und Antworten)

寻∝梦
Freigeben: 2018-09-11 14:07:56
Original
8812 Leute haben es durchsucht

Dieser Artikel führt Sie hauptsächlich in das Grundverständnis von Reagieren ein. Trauen Sie sich zu behaupten, dass Sie viel über Reagieren wissen? Wenn nicht, schauen Sie sich diesen Artikel an

1. Warum baut Facebook React auf?

Wenn Facebook-Ingenieure an großen Projekten arbeiten, Aufgrund ihrer sehr großen Codebasis und ihrer großen Organisation wurde MVC schnell sehr komplex, wenn eine neue Funktion oder ein neues Feature hinzugefügt werden musste, was dazu führte, dass der Code fragiler und unvorhersehbarer wurde. Ihr MVC fällt auseinander, daher ist Facebook der Ansicht, dass MVC nicht für große Anwendungen geeignet ist. Wenn das System viele Modelle und entsprechende Ansichten enthält, wird seine Komplexität schnell zunehmen, was es sehr schwierig macht, es zu verstehen und zu debuggen der mögliche bidirektionale Datenfluss zwischen dem Modell und der Ansicht.

Aus den oben genannten Gründen ist Facebook der Ansicht, dass MVC seine Erweiterungsanforderungen nicht erfüllen kann. Um die oben genannten Probleme zu lösen, müssen sie „den Code organisieren“. eine Möglichkeit, es benutzerfreundlicher zu machen. „Prediction“, also schlugen sie Flux und React vor, um es zu implementieren.

2. Was ist Reagieren?

Reagieren Es entstand als internes Projekt bei Facebook. Da das Unternehmen mit allen JavaScript-MVC-Frameworks auf dem Markt nicht zufrieden war, beschloss es, ein eigenes Projekt zu schreiben, um die Instagram-Website zu erstellen. Nachdem ich es erstellt hatte, stellte ich fest, dass diese Reihe von Dingen sehr nützlich ist, sodass sie im Mai 2013 als Open Source veröffentlicht wurde.

React ist eine JavaScript-Bibliothek zum Erstellen von Benutzeroberflächen. Viele Leute denken, dass React hauptsächlich zum Erstellen einer Benutzeroberfläche verwendet wird Reagieren ist das V (Ansicht) in MVC. React hat eine hohe Leistung und eine sehr einfache Codelogik. Immer mehr Menschen achten darauf und nutzen es.

3. Welches Problem löst React?

Wir haben React entwickelt, um ein Problem zu lösen: die Erstellung großer Anwendungen mit Daten, die sich im Laufe der Zeit ändern. Erstellen Sie umfangreiche Anwendungen, bei denen sich Daten im Laufe der Zeit ändern.

4. Reagieren Sie auf Funktionen >1 .

Deklaratives Design −React verwendet ein deklaratives Paradigma, das die Beschreibung von Anwendungen erleichtert. 2.

Effizient −React minimiert die Interaktion mit DOM durch Simulation von DOM.

3.Flexibel −React funktioniert gut mit bekannten Bibliotheken oder Frameworks.

4.JSX − JSX ist Eine Erweiterung der JavaScript-Syntax. React muss nicht unbedingt für die Entwicklung verwendet werden JSX, wir empfehlen jedoch die Verwendung.

5.Komponenten verwendet React zum Erstellen von Komponenten, wodurch der Code leichter wiederverwendet werden kann und gut bei der Entwicklung großer Projekte eingesetzt werden kann.

6.Einseitiger Antwortdatenfluss − React implementiert einen unidirektionalen Antwortdatenfluss und reduziert dadurch wiederholten Code, weshalb es einfacher als die herkömmliche Datenbindung ist.

5. Hauptprinzipien von React

Traditionelles In Bei Webanwendungen werden DOM-Vorgänge im Allgemeinen direkt aktualisiert. Wir wissen jedoch, dass DOM-Aktualisierungen normalerweise relativ teuer sind. Um Vorgänge im DOM so weit wie möglich zu reduzieren, bietet React eine andere und leistungsstarke Möglichkeit, das DOM anstelle direkter DOM-Vorgänge zu aktualisieren. Es handelt sich um VirtualDOM, ein leichtes virtuelles DOM, ein von React abstrahiertes Objekt, das beschreibt, wie das Dom aussehen und wie es dargestellt werden soll. Durch dieses Virtuelle DOM aktualisiert das reale DOM, und dieses virtuelle DOM verwaltet die Aktualisierung des realen DOM. (Wenn Sie mehr erfahren möchten, besuchen Sie die Spalte React Reference Manual der PHP-Website für Chinesisch, um mehr zu erfahren)

Warum können virtuelle DOM-Vorgänge durch diese zusätzliche Ebene schneller sein? ? Dies liegt daran, dass React über einen Diff-Algorithmus verfügt, der nicht garantiert, dass es sich sofort auf das reale DOM auswirkt, und dann diesen Diff-Algorithmus verwendet, um den Mindestschritt durch Vergleich der aktuellen neuen Dom-Darstellung zu berechnen mit dem vorherigen. Aktualisieren Sie das echte DOM.

Der offensichtlichste Vorteil ist der sogenannte Dom-Diff von React, der Dom-Updates auf Delta-Ebene erreichen kann. Wenn Datenänderungen DOM-Änderungen verursachen, führt React keine globale Aktualisierung durch, sondern berechnet die Unterschiede über seinen internen Dom-Diff-Algorithmus und aktualisiert sie dann mit der kleinsten Granularität. Dies ist auch der Grund, warum React eine gute Leistung nachgesagt wird.

6. Komponenten Komponenten

im DOM-Baum Der Knoten wird als Element bezeichnet, aber hier ist es anders. Er wird im virtuellen DOM als Common bezeichnet. Der Knoten von Virtual DOM ist eine vollständige abstrakte Komponente, die aus Komponenten besteht. Komponente wird verwendet in Dies ist in React äußerst wichtig, da die Existenz von Komponenten die Berechnung von DOM-Differenzen effizienter macht.

7. Anwendung

Es gibt viele ausländische Anwendungen wie Facebook, Yahoo, Reddit usw. Sie können eine Liste von Sites-Using-React auf Github sehen: https://github.com/facebook/react/wiki/Sites-Using-React. Wenn Sie in China sind, habe ich es überprüft und es scheint, dass es relativ viele gibt Derzeit kenne ich ein Suchauto. Die meisten Technologien lassen sich im Inland im Allgemeinen nur langsam anwenden.

8. Vergleichende Analyse

und einige andere js Wie schneidet React im Vergleich zu Frameworks wie Backbone, Angular usw. ab? Komponenten, die einfach wiederholt aufgerufen werden können, also die Ansichtsebene

2. Zweitens ist React ein einseitiges Rendering Daten zum Anzeigen, nicht bidirektionale Datenbindung

3. Bedienen Sie das DOM-Objekt nicht direkt, sondern verwenden Sie das virtuelle DOM, um es auf das reale anzuwenden DOM in kleinsten Schritten durch den Diff-Algorithmus.

4. Es ist nicht bequem, das DOM direkt zu bedienen

9. Beziehung zu React Native

Da die Designidee von React äußerst einzigartig ist, ist sie revolutionär Innovation und Leistung sind hervorragend. Die Codelogik ist sehr einfach. Daher beginnen immer mehr Menschen, darauf zu achten und es zu nutzen, weil sie denken, dass es die Zukunft des Webs sein könnte Mainstream-Tools für die Entwicklung.

Das Projekt selbst ist immer größer geworden, von der ersten UI-Engine bis hin zu einem kompletten Satz von Front-End- und Back-End-Web-App-Lösungen. Das abgeleitete React Native-Projekt hat noch ehrgeizigere Ziele und hofft, damit Web-Apps schreiben zu können. Art und Weise, eine native App zu schreiben. Wenn dies realisiert werden kann, wird die gesamte Internetbranche untergraben, da dieselbe Personengruppe die Benutzeroberfläche nur einmal schreiben muss und sie gleichzeitig auf dem Server, dem Browser und dem Mobiltelefon ausgeführt werden kann.

Dieser Artikel endet hier (wenn Sie mehr sehen möchten, besuchen Sie die chinesische PHP-Website

React-BenutzerhandbuchStudieren Sie in der Spalte), wenn Sie Fragen haben, können Sie unten eine Nachricht hinterlassen.

Das obige ist der detaillierte Inhalt vonWas ist reagieren? Was macht React hauptsächlich? (Fragen und Antworten). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage