Heim Web-Frontend js-Tutorial Zusammenfassung der Grundkenntnisse von Vue.js_Others

Zusammenfassung der Grundkenntnisse von Vue.js_Others

May 16, 2016 pm 03:03 PM
vue.js

Einführung

vue.js ist eine Bibliothek zum Erstellen von Webanwendungsschnittstellen

Technisch gesehen konzentriert sich Vue.js auf die ViewModel-Ebene des MVVM-Musters, die die Ansicht und das Datenbindungsmodell auf zwei Arten verbindet. Die eigentliche DOM-Manipulation und Ausgabeformatierung werden in Direktiven und Filter

abstrahiert

Versuchen Sie im Bereich der Philosophie, die MVVM-Datenbindungs-API so einfach wie möglich zu gestalten. Modularität und Zusammensetzbarkeit waren ebenfalls wichtige Designaspekte. Vue ist kein umfassendes Framework, sondern einfach und flexibel konzipiert. Sie können es für schnelles Prototyping verwenden oder mit anderen Bibliotheken kombinieren, um Ihren Front-End-Stack zu definieren.

Vue. Die js-API bezieht sich auf AngularJS, KnockoutJS, Ractive.js und Rivets.js. Trotz der Ähnlichkeiten glaube ich, dass Vue.js einen Mehrwert bietet, der es Ihnen ermöglicht, einige der vorhandenen Frameworks auszutauschen

Auch wenn Sie mit einigen dieser Begriffe bereits vertraut sind, wird empfohlen, dass Sie die folgende Übersicht der Konzepte durchgehen, da Ihr Konzept dieser Begriffe in den folgenden Vue.js möglicherweise anders ist

Konzeptübersicht

ViewModel

Ein Objekt, das Modelle und Ansichten synchronisiert. In Vue.js sind ViewModels die Konstruktoren von instanziiertem Vue oder seinen Unterklassen

var vm = new Vue({ /* options */ })
Nach dem Login kopieren

Dies ist das Hauptobjekt, mit dem Sie als Entwickler interagieren, wenn Sie Vue.js verwenden. Weitere Einzelheiten finden Sie unter Klasse: Vue.

Ansicht

Das tatsächliche HTML/DOM, das der Benutzer sieht

vm.$el // The View
Nach dem Login kopieren


Wenn Sie Vue.js verwenden, werden Sie die DOM-Operation fast nie berühren, wenn die Daten aktualisiert werden. Die Ansichtsaktualisierung kann auch für jeden testNode-Knoten erfolgen Batch- und asynchrone Ausführung ermöglichen so eine bessere Leistung.

Modell

Dies ist ein leicht modifiziertes Javascript-Objekt

vm.$data // The Model
Nach dem Login kopieren

In Vue.js sind Modelle nur einfache Javascript-Objekte und Datenobjekte. Sie können ihre Eigenschaften bearbeiten und Modelle anzeigen, ihre Änderungen beobachten und Benachrichtigungen erhalten. Vue.js verwendet ES5-Getter/Setter, um Attribute im Datenobjekt zu konvertieren, was direkte Operationen ohne Dirty Checking ermöglicht.

Das Datenobjekt wird bei Bedarf mutiert, daher hat eine Änderung den gleichen Effekt wie eine Änderung von vm.$data durch Referenz. Dies erleichtert auch mehreren ViewModel-Instanzen die Beobachtung derselben Daten.

Technische Details finden Sie unter Instanziierungsoptionen: Daten.

Richtlinien

Private HTML-Attribute weisen Vue.js an, einige Verarbeitungen im DOM durchzuführen

<div v-text="message"></div>
Nach dem Login kopieren

Das div-Element hat hier eine V-Text-Anweisung und der Wert ist message. Dies bedeutet, dass Vue.js angewiesen wird, den Inhalt dieses div-Knotens mit dem Nachrichtenattribut im viewMode zu synchronisieren.

Die

-Direktive kann jede DOM-Operation kapseln. Beispielsweise betreibt v-attr ein Attributelement, v-repeat klont ein Element basierend auf einem Array und v-on fügt eine Ereignisüberwachung hinzu, auf die wir später noch näher eingehen werden

Schnurrbartbindungen

Sie können sowohl im Text als auch in den Attributen auch eine Bindung im Schnurrbartstil verwenden. Sie werden in V-Text-V-Attr-Anweisungen übersetzt. Zum Beispiel:

<div id="person-{{id}}">Hello {{name}}!</div>
Nach dem Login kopieren

Obwohl es praktisch ist, gibt es ein paar Dinge, auf die Sie achten müssen:

Wenn Sie das src-Attribut eines Bildes festlegen, wird eine HTTP-Anfrage gesendet. Wenn die Vorlage also zum ersten Mal analysiert wird und 404 angezeigt wird, ist es zu diesem Zeitpunkt besser, v-attr zu verwenden

Internet Explorer entfernt beim Parsen von HTML ungültige interne Stilattribute. Wenn wir also IE-bindendes Inline-CSS unterstützen möchten, verwende ich immer v-style

Innerhalb von v-html können Sie drei geschweifte Klammern {{{wie folgt}}} verwenden, um nicht maskiertes HTML zu verarbeiten. Dies birgt jedoch potenzielle XSS-Angriffe und kann Fenster öffnen. Daher wird empfohlen, absolut sicher zu sein. Tun Sie dies nur wenn die Daten vollständig sind, oder bereinigen Sie nicht vertrauenswürdiges HTML über einen benutzerdefinierten Pipeline-Filter

Filter

Sie können Funktionen verwenden, um diese Rohdaten zu verarbeiten, bevor Sie die Ansicht aktualisieren. Sie verwenden eine „Pipeline“-Direktive oder -Bindung:

<div>{{message | capitalize}}</div>
Nach dem Login kopieren

Bevor der Textinhalt des Div aktualisiert wird, wird der Wert dieser Nachricht von der Großschreibungsfunktion verarbeitet. Einzelheiten finden Sie unter Filter im Detail.

Komponenten

In Vue.js ist eine Komponente ein einfacher Ansichtsmodellkonstruktor, der über Vue.component (ID, Konstruktor) registriert wird. Die V-Komponenten-Direktive der Vorlage eines anderen Ansichtsmodells kann über eine zugehörige ID verschachtelt werden. Dieser einfache Mechanismus ermöglicht die Wiederverwendung und Zusammenstellung deklarativer Ansichtsmodelle auf ähnliche Weise wie Webkomponenten, ohne dass die neuesten Browser oder leistungsstarke Polyfills erforderlich sind. Durch die Aufteilung der Anwendung in kleinere Komponenten entsteht eine stark entkoppelte und wartbare Codebasis. Weitere Einzelheiten finden Sie unter Erstellen von ViewModels.

Ein kurzes Beispiel

<div id="demo">
  <h1>{{title | uppercase}}</h1>
  <ul>
    <li
      v-repeat="todos"
      v-on="click: done = !done"
      class="{{done &#63; 'done' : ''}}">
      {{content}}
    </li>
  </ul>
</div>
Nach dem Login kopieren
 
var demo = new Vue({
  el: '#demo',
  data: {
    title: 'todos',
    todos: [
      {
        done: true,
        content: 'Learn JavaScript'
      },
      {
        done: false,
        content: 'Learn vue.js'
      }
    ]
  }
})

Nach dem Login kopieren

Grobe Übersetzung, bitte auf eventuelle Fehler hinweisen

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ß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)

Praktischer Kampf: Entwickeln Sie ein Plug-In in vscode, das Vue-Dateien unterstützt, um zu Definitionen zu springen Praktischer Kampf: Entwickeln Sie ein Plug-In in vscode, das Vue-Dateien unterstützt, um zu Definitionen zu springen Nov 16, 2022 pm 08:43 PM

vscode selbst unterstützt Vue-Dateikomponenten, um zu Definitionen zu springen, aber die Unterstützung ist sehr schwach. Unter der Konfiguration von vue-cli können wir viele flexible Verwendungen schreiben, die unsere Produktionseffizienz verbessern können. Es sind jedoch diese flexiblen Schreibmethoden, die verhindern, dass die von vscode selbst bereitgestellten Funktionen das Springen zu Dateidefinitionen unterstützen. Um mit diesen flexiblen Schreibmethoden kompatibel zu sein und die Arbeitseffizienz zu verbessern, habe ich ein vscode-Plug-in geschrieben, das Vue-Dateien unterstützt, um zu Definitionen zu springen.

Ausführliche Diskussion darüber, wie Vite .env-Dateien analysiert Ausführliche Diskussion darüber, wie Vite .env-Dateien analysiert Jan 24, 2023 am 05:30 AM

Wenn wir das Vue-Framework zum Entwickeln von Front-End-Projekten verwenden, stellen wir bei der Bereitstellung mehrere Umgebungen bereit. Oft sind die von Entwicklungs-, Test- und Online-Umgebungen aufgerufenen Schnittstellendomänen unterschiedlich. Wie können wir die Unterscheidung treffen? Dabei werden Umgebungsvariablen und Muster verwendet.

Was ist der Unterschied zwischen Komponentisierung und Modularisierung in Vue? Was ist der Unterschied zwischen Komponentisierung und Modularisierung in Vue? Dec 15, 2022 pm 12:54 PM

Der Unterschied zwischen Komponentisierung und Modularisierung: Die Modularisierung ist aus Sicht der Codelogik unterteilt. Sie erleichtert die Entwicklung auf Codeebene und stellt sicher, dass die Funktionen jedes Funktionsmoduls konsistent sind. Die Komponentisierung ist die Planung aus der Perspektive der UI-Schnittstelle; die Komponentisierung des Frontends erleichtert die Wiederverwendung von UI-Komponenten.

Lassen Sie uns ausführlich über reactive() in vue3 sprechen Lassen Sie uns ausführlich über reactive() in vue3 sprechen Jan 06, 2023 pm 09:21 PM

Vorwort: Bei der Entwicklung von vue3 bietet reactive eine Methode zur Implementierung reaktionsfähiger Daten. Dies ist eine häufig verwendete API in der täglichen Entwicklung. In diesem Artikel wird der Autor seinen internen Betriebsmechanismus untersuchen.

Detaillierte grafische Erklärung zur Integration des Ace-Code-Editors in ein Vue-Projekt Detaillierte grafische Erklärung zur Integration des Ace-Code-Editors in ein Vue-Projekt Apr 24, 2023 am 10:52 AM

Ace ist ein in JavaScript geschriebener einbettbarer Code-Editor. Es entspricht der Funktionalität und Leistung nativer Editoren wie Sublime, Vim und TextMate. Es kann problemlos in jede Webseite und JavaScript-Anwendung eingebettet werden. Ace wird als Haupteditor für die Cloud9-IDE gepflegt und ist der Nachfolger des Mozilla Skywriter (Bespin)-Projekts.

Erfahren Sie, wie Sie Unit-Tests in Vue3 schreiben Erfahren Sie, wie Sie Unit-Tests in Vue3 schreiben Apr 25, 2023 pm 07:41 PM

Vue.js ist heute ein sehr beliebtes Framework in der Front-End-Entwicklung. Da sich Vue.js ständig weiterentwickelt, werden Unit-Tests immer wichtiger. Heute untersuchen wir, wie man Unit-Tests in Vue.js 3 schreibt, und stellen einige Best Practices sowie häufige Probleme und Lösungen vor.

Eine kurze Analyse zum Umgang mit Ausnahmen in dynamischen Vue3-Komponenten Eine kurze Analyse zum Umgang mit Ausnahmen in dynamischen Vue3-Komponenten Dec 02, 2022 pm 09:11 PM

Wie gehe ich mit Ausnahmen in dynamischen Vue3-Komponenten um? Im folgenden Artikel geht es um die Ausnahmebehandlungsmethoden für dynamische Vue3-Komponenten. Ich hoffe, dass er für alle hilfreich ist.

Analysieren Sie das Prinzip der Implementierung der Kompositions-API durch Vue2 Analysieren Sie das Prinzip der Implementierung der Kompositions-API durch Vue2 Jan 13, 2023 am 08:30 AM

Seit der Veröffentlichung von Vue3 ist die Wortkompositions-API in das Blickfeld der Vue-Schreibenden gerückt. Ich glaube, jeder hat aufgrund der Veröffentlichung von @ immer gehört, wie viel besser die Kompositions-API ist als die vorherige Options-API. vue/composition-api-Plug-in, Vue2-Studenten können ebenfalls in den Bus einsteigen. Als Nächstes werden wir hauptsächlich Responsive Ref und Reactive verwenden, um eine eingehende Analyse durchzuführen, wie dieses Plug-In dies erreicht.

See all articles