Heim > Web-Frontend > Front-End-Fragen und Antworten > Was ist der Unterschied zwischen der Erkennung schmutziger Winkelwerte und der Übernahme von Vue-Daten?

Was ist der Unterschied zwischen der Erkennung schmutziger Winkelwerte und der Übernahme von Vue-Daten?

青灯夜游
Freigeben: 2021-02-01 11:46:38
Original
2784 Leute haben es durchsucht

Unterschiede: 1. Die Angular-Dirty-Value-Erkennung unterstützt prinzipiell den Low-End-IE und ist theoretisch besser kompatibel. Für die Entführung von Vue-Daten ist ein Browser erforderlich, der ES5 unterstützt. 2. Die Erkennung schmutziger Winkelwerte eignet sich für Aktualisierungen mit großen Datenmengen. Die Datenentführung von Vue eignet sich für Aktualisierungen mit kleinen Datenmengen.

Was ist der Unterschied zwischen der Erkennung schmutziger Winkelwerte und der Übernahme von Vue-Daten?

Verwandte Empfehlungen: „Angular-Tutorial“, „vue.js-Tutorial

Es gibt ungefähr die folgenden Methoden zum Implementieren der Datenbindung:

  • Publisher-Subscriber-Muster (Backbone) .js )

  • Dirty Value Checking (angular.js)

  • Data Hijacking (vue.js)

Dirty Value Detection in Angular

angular.js erfolgt durch Dirty Value Detection. Vergleichen Sie, ob die Daten haben sich geändert, um zu entscheiden, ob die Ansicht aktualisiert werden soll. Natürlich wird Google die Erkennung schmutziger Werte nicht so langsam durchführen, wenn das angegebene Ereignis ausgelöst wird. , ungefähr wie folgt:

  • DOM-Ereignisse, z. B. Benutzer, die Text eingeben, auf Schaltflächen klicken usw. (ng-click)

  • Vor- und Nachteile
  • Im Prinzip unterstützt es Low-End-IE (denken Sie daran, dass der früheste NG IE8 unterstützt) und ist theoretisch besser kompatibel
  • Es ist geeignet Für die Aktualisierung großer Datenmengen ist die Zeitkomplexität auf CPU-Ebene O(VModel). Eine kleine Menge aktualisierter Diffs ist rechenintensiv
  • Sie können erwägen, die Räder und Ideen von Immutable.js zu optimieren, ähnlich wie bei React + Redux + Immer

Es muss manuell aufgerufen werden, genau wie setState, was nach der Einführung von Zone.js praktisch ist. Bei einigen großgranularen Updates tritt dieses Problem auf

  • Datenentführung in Vue
  • Die Datenentführung wird hauptsächlich über die von ES5 bereitgestellte Object.defineProperty-Methode implementiert, die die Vorgänge an den Daten überwacht, sodass die Daten automatisch synchron ausgelöst werden können. Da die Synchronisierung außerdem für verschiedene Daten ausgelöst wird, können Änderungen genau an die gebundene Ansicht gesendet werden, anstatt einen Test für alle Daten durchzuführen.
  • Die Bindung und Synchronisierung von Daten und Ansichten spiegelt sich letztendlich im Lese- und Schreibprozess von Daten wider, dh in den durch Object.defineProperty () definierten Datensatz- und Abruffunktionen. Vor- und Nachteile

    Geeignet für kleine Datenmengen (feine Granularität), die zeitliche Komplexität auf CPU-Ebene beträgt O (Änderung), auf Kosten einer höheren Speichernutzung (Raum für Zeit)
  • Reduzieren Sie die Granularität der Abhängigkeitssammlung (von der Pflege). eine bestimmte Eigenschaft, sich nur darum zu kümmern) (ein Objekt hat sich geändert) kann Speicherprobleme optimieren

Tatsächlich führt Vue 2 Virtual DOM ein und verwendet Diff, um auf Unterkomponentenebene zu aktualisieren

Der Unterschied zwischen den beiden

Winkel-Dirty-Value-Erkennung Im Prinzip unterstützt es Low-End-IE (denken Sie daran, dass der früheste NG IE8 unterstützt) und weist theoretisch eine bessere Kompatibilität auf, während für die Entführung von Vue-Daten ein Browser erforderlich ist, der ES5 unterstützt.
  • Die Angular-Dirty-Value-Erkennung eignet sich für Aktualisierungen mit großen Datenmengen, während Vue-Daten-Hijacking für Aktualisierungen mit kleinen Datenmengen geeignet ist (feine Granularität). 🔜 Besuchen Sie:

    Einführung in die Programmierung

    ! !

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen der Erkennung schmutziger Winkelwerte und der Übernahme von Vue-Daten?. 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