Heim Web-Frontend Front-End-Fragen und Antworten So verstehen Sie den Datentreiber von vuejs

So verstehen Sie den Datentreiber von vuejs

Sep 24, 2021 pm 04:55 PM
vue 数据驱动

Datengesteuert bedeutet in Vuejs, dass sich die Benutzeroberfläche entsprechend ändert und Entwickler das DOM nicht manuell ändern müssen, sondern einfach das DOM ändern, indem sie die Datenänderungen steuern, sodass die Ansicht geändert wird (Der Inhalt des DOM ändert sich, wenn sich die Daten ändern.

So verstehen Sie den Datentreiber von vuejs

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Vue-Version 2.9.6, DELL G3-Computer.

Erstens: Was ist Vue und wie ist Vue zu verstehen?

Vue ist ein Framework, das auf der datengesteuerten Seite im MVVM-Modus basiert und Daten an die Ansicht bindet. Es handelt sich um eine Technologie zur Implementierung von Single-Page-Anwendungen.

Mehrere Hauptfunktionen zusammengefasst:

  • Einfach

  • Leicht

  • Schnell

  • Datengesteuert

  • Modulfreundlich

  • Komponentisierung

vue setzt auf Datentreiber zwei- Die Bindung erleichtert uns die Entwicklung von Seiten und Entwickler müssen das DOM nicht manuell ändern. Vue macht alles einfacher mit der bidirektionalen Datenbindung. Seine datengesteuerte bidirektionale Bindung wird durch die durch Object.defineProperty() definierten Datensätze und Get-Funktionsprinzipien implementiert.

2. Die komponentenbasierte Entwicklung macht das Projekt skalierbarer und portabler und der Code ist besser wiederverwendbar.

3. Einseitige Anwendungserfahrung, lokale Komponenten aktualisieren die Benutzeroberfläche, um die Benutzererfahrung zu beschleunigen und Zeit zu sparen.

Einzelseitige Anwendung, auch SPA genannt, beschränkt alle Aktivitäten auf eine Webseite und lädt das entsprechende HTML, JavaScript und CSS nur, wenn die Webseite initialisiert wird. Nach Abschluss des Ladevorgangs wird die Seite nicht mehr neu geladen oder springt. Nur die darin enthaltenen Komponenten oder Module interagieren und springen über die Hash- oder Verlaufs-API und rufen Daten über Ajax ab, um die Antwortfunktion zu implementieren heißt Einzelseite!

4. Der js-Code verfügt über unsichtbare Standards und der durch Teamarbeit entwickelte Code ist besser lesbar.

2: Was ist das Prinzip von Vue Data-Driven (bidirektionale Datenbindung)?

Was ist datengesteuert?

Datengesteuert ist das größte Merkmal von vue.js. In vue.js bedeutet das sogenannte datengesteuert, dass sich die Benutzeroberfläche entsprechend ändert, wenn sich die Daten ändern, und Entwickler das DOM nicht manuell ändern müssen.

Wenn wir beispielsweise auf eine Schaltfläche klicken, muss der Text des Elements zwischen Ja und Nein umgeschaltet werden. In jquery folgen wir beim Ändern der Seite im Allgemeinen diesem Prozess. Wir binden Ereignisse an die Schaltfläche, rufen dann das der Kopie entsprechende Element-Dom-Objekt ab und ändern dann den Kopierwert des Dom-Objekts entsprechend dem Schalter.

Wie erreicht VueJs dieses Datenlaufwerk?

Vue implementiert die bidirektionale Datenbindung hauptsächlich durch: Verwendung von Datenhijacking in Kombination mit dem Publisher-Subscriber-Modell, Kaperung der Setter und Getter jeder Eigenschaft über Object.defineProperty() und Veröffentlichung von Nachrichten an Abonnenten, wenn sich der Datenauslöser ändert den entsprechenden Listening-Callback. Wenn Sie ein einfaches Javascript-Objekt als Datenoption an eine Vue-Instanz übergeben, durchläuft Vue seine Eigenschaften und konvertiert sie mithilfe von Object.defineProperty in Getter/Setter. Die Getter/Setter sind für den Benutzer nicht sichtbar, aber intern ermöglichen sie Vue, Abhängigkeiten zu verfolgen und Änderungen zu benachrichtigen, wenn auf Eigenschaften zugegriffen und diese geändert werden.

Vues bidirektionale Datenbindung verwendet MVVM als Eingang zur Datenbindung und integriert Observer, Compile und Watcher. Es verwendet Observer, um die Datenänderungen seines eigenen Modells zu überwachen, und verwendet Compile, um Vorlagenanweisungen zu analysieren und zu kompilieren in vue Parse {{}}) und verwenden Sie schließlich Watcher, um eine Kommunikationsbrücke zwischen Beobachter und Compile zu bauen, um einen bidirektionalen Bindungseffekt von Datenänderungen -> Ansichtsaktualisierung, interaktive Änderung (Eingabe) -> Datenmodelländerung zu erzielen .

Verständnis von Getter/Setter?

Beim Ausdrucken der Attribute im Datenobjekt unter der Vue-Instanz verfügt jedes seiner Attribute über zwei entsprechende get- und set-Methoden. Wie der Name schon sagt, dient get zur Werterfassung und set zur Zuweisung. Unter normalen Umständen erhalten wir die value und Die Zuweisung verwendet obj.prop, es liegt jedoch ein Problem vor. Woher weiß ich, dass sich der Wert des Objekts geändert hat? Es ist also an der Reihe, dass das Set erscheint. Sie können get und set als Funktionen verstehen. Wenn wir die Eigenschaften des Objekts aufrufen, geben wir get.property(){...} ein und bestimmen zunächst, ob das Objekt diese Eigenschaft hat. Wenn nicht, fügen wir ein Namensattribut hinzu Weisen Sie ihm einen Wert zu. Wenn ein Namensattribut vorhanden ist, geben Sie das Namensattribut zurück. Sie können sich get als eine Funktion vorstellen, die einen Wert annimmt, und der Rückgabewert der Funktion ist der Wert, den sie erhält. Was meiner Meinung nach wichtiger ist, ist das Set-Attribut. Zu diesem Zeitpunkt wird set name(val){...} eingegeben. Der formale Parameter val ist der Wert, den ich dem Namensattribut zugewiesen habe In dieser Funktion können Sie viele Dinge tun, z. B. die bidirektionale Bindung! Da jede Änderung dieses Werts durch einen Satz erfolgen muss, kann er nicht mit anderen Methoden geändert werden, was einem universellen Listener entspricht. Der Objektprototyp von ES5 verfügt über zwei neue Attribute __defineGetter__ und __defineSetter__, die speziell zum Binden von get und set an Objekte verwendet werden. Es wird empfohlen, die folgende Methode zu verwenden, da sie auf dem Prototyp geschrieben ist und daher vererbt und wiederverwendet werden kann.

Drei: MVVM-Framework

Der Datentreiber von Vue.js wird über das MVVM-Framework implementiert. Das MVVM-Framework besteht hauptsächlich aus drei Teilen: Modell, Ansicht und Ansichtsmodell.

  • Modell: bezieht sich auf den Datenteil, der dem Javascript-Objekt im Frontend entspricht.

  • Ansicht: bezieht sich auf den Ansichtsteil, der dem Dom im Frontend entspricht Das verbindet die Ansicht und die Daten. Kommunikation: Daten (Modell) und Ansicht (Ansicht) können nicht direkt kommunizieren, sondern müssen über ViewModel miteinander kommunizieren. Wenn sich die Daten ändern, kann das ViewModel die Änderung überwachen und die Ansicht benachrichtigen, um rechtzeitig Änderungen vorzunehmen. Wenn auf der Seite ein Ereignis ausgelöst wird, kann viewMOdel in ähnlicher Weise auch das Ereignis abhören und das Modell zur Reaktion benachrichtigen. Viewmodel entspricht einem Beobachter, der die Aktionen beider Parteien überwacht und die andere Partei rechtzeitig benachrichtigt, um entsprechende Vorgänge durchzuführen.

  • Verwandte Empfehlungen: „
  • vue.js Tutorial

Das obige ist der detaillierte Inhalt vonSo verstehen Sie den Datentreiber von vuejs. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So fügen Sie Funktionen zu Schaltflächen für Vue hinzu So fügen Sie Funktionen zu Schaltflächen für Vue hinzu Apr 08, 2025 am 08:51 AM

Sie können der VUE -Taste eine Funktion hinzufügen, indem Sie die Taste in der HTML -Vorlage an eine Methode binden. Definieren Sie die Methode und schreiben Sie die Funktionslogik in der VUE -Instanz.

So verwenden Sie Bootstrap in Vue So verwenden Sie Bootstrap in Vue Apr 07, 2025 pm 11:33 PM

Die Verwendung von Bootstrap in Vue.js ist in fünf Schritte unterteilt: Startstrap installieren. Bootstrap in main.js. Verwenden Sie die Bootstrap -Komponente direkt in der Vorlage. Optional: benutzerdefinierter Stil. Optional: Verwenden Sie Plug-Ins.

So verweisen Sie auf die JS -Datei mit Vue.js So verweisen Sie auf die JS -Datei mit Vue.js Apr 07, 2025 pm 11:27 PM

Es gibt drei Möglichkeiten, sich auf JS -Dateien in Vue.js zu beziehen: Geben Sie den Pfad direkt mit dem & lt; Skript & gt an. Etikett;; Dynamischer Import mit dem montierten () Lebenszyklushaken; und importieren über die Vuex State Management Library.

So verwenden Sie Watch in Vue So verwenden Sie Watch in Vue Apr 07, 2025 pm 11:36 PM

Mit der Watch -Option in Vue.js können Entwickler auf Änderungen in bestimmten Daten anhören. Wenn sich die Daten ändert, löst sich eine Rückruffunktion aus, um Aktualisierungsansichten oder andere Aufgaben auszuführen. Zu den Konfigurationsoptionen gehören unmittelbar, die festlegen, ob ein Rückruf sofort ausgeführt werden soll, und Deep, das feststellt, ob Änderungen an Objekten oder Arrays rekursiv anhören sollen.

So kehren Sie von Vue zur vorherigen Seite zurück So kehren Sie von Vue zur vorherigen Seite zurück Apr 07, 2025 pm 11:30 PM

VUE.JS hat vier Methoden, um zur vorherigen Seite zurückzukehren: $ router.go (-1) $ router.back () verwendet & lt; Router-Link to = & quot;/& quot; Komponentenfenster.history.back () und die Methodenauswahl hängt von der Szene ab.

Was bedeutet VUE Multi-Page-Entwicklung? Was bedeutet VUE Multi-Page-Entwicklung? Apr 07, 2025 pm 11:57 PM

VUE Multi-Page-Entwicklung ist eine Möglichkeit, Anwendungen mithilfe des Vue.js-Frameworks zu erstellen, in dem die Anwendung in separate Seiten unterteilt ist: Code-Wartung: Die Aufteilung der Anwendung in mehrere Seiten kann das Verwalten und Wartungsbereich erleichtern. Modularität: Jede Seite kann als separates Modul für eine einfache Wiederverwendung und den Austausch verwendet werden. Einfaches Routing: Die Navigation zwischen Seiten kann durch einfache Routing -Konfiguration verwaltet werden. SEO -Optimierung: Jede Seite hat eine eigene URL, die SEO hilft.

So fragen Sie die Version von Vue So fragen Sie die Version von Vue Apr 07, 2025 pm 11:24 PM

Sie können die Vue -Version mit Vue Devtools abfragen, um die Registerkarte VUE in der Konsole des Browsers anzuzeigen. Verwenden Sie NPM, um den Befehl "npm list -g vue" auszuführen. Suchen Sie das Vue -Element im Objekt "Abhängigkeiten" der Datei package.json. Führen Sie für Vue -CLI -Projekte den Befehl "Vue --version" aus. Überprüfen Sie die Versionsinformationen im & lt; Skript & gt; Tag in der HTML -Datei, die sich auf die VUE -Datei bezieht.

Wie man zum Div von Vue springt Wie man zum Div von Vue springt Apr 08, 2025 am 09:18 AM

Es gibt zwei Möglichkeiten, Divelemente in Vue zu springen: Verwenden Sie Vue Router und fügen Sie Router-Link-Komponente hinzu. Fügen Sie den @click Event -Listener hinzu und nennen Sie dies. $ Router.push () Methode zum Springen.

See all articles