Heim Web-Frontend js-Tutorial Diskussion über Komponenten und Vorlagen in Vue.js

Diskussion über Komponenten und Vorlagen in Vue.js

Oct 28, 2017 am 09:29 AM
javascript vue.js 探讨

Zusammenfassung: Die

-Direktive ist eine wichtige Funktion in Vue.js. Sie stellt hauptsächlich einen Mechanismus bereit, um Änderungen in Daten dem DOM-Verhalten zuzuordnen. Welche Datenänderungen werden dann dem DOM-Verhalten zugeordnet? Vue.js wird durch Daten gesteuert, sodass wir die DOM-Struktur nicht direkt ändern und es kein ähnliches $('ul').append( '

  • one
  • ') eine solche Operation: Wenn sich die Daten ändern, ändert die Anweisung das DOM mit einer Set-Operation, sodass Sie sich nur auf die Datenänderungen konzentrieren können, ohne DOM-Änderungen und -Status verwalten zu müssen ,

    Vues integrierte Anweisungen

    1. v-bind

    v-bind Es wird hauptsächlich zum Binden von DOM-Elementattributen verwendet.

    bedeutet, dass der tatsächliche Wert des Elementattributs durch das Datenattribut in der VM-Instanz bereitgestellt wird.

    Zum Beispiel:

    <!doctype html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title>Vue的指令</title>
      <script src="../vue.js"></script>
    </head>
    <body>
    <!-- HTML模版 -->
    <p id="demo">
      <span v-bind:cutomId="id">{{message}}</span>
    </p>
    <script>
      //数据
      let obj ={
        message:"Hello World",
        id:&#39;123&#39;
      };
     //声明式渲染
      var vm = new Vue({
        el:&#39;#demo&#39;,
        data:obj  });
    </script>
    </body>
    </html>
    Nach dem Login kopieren

    v-bind kann als „:“ abgekürzt werden,

    Das obige Beispiel kann als <span :cotomId="id">

    <🎜 abgekürzt werden >Der Effekt ist wie folgt:

    2. v-on

    Bind Event Listener, abgekürzt als @.

    Wir haben es gestern auch verwendet, schauen wir uns die Wirkung in Kürze an

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title>Vue的指令</title>
      <script src="../vue.js"></script>
    </head>
    <body>
      <!-- HTML模版 -->
      <p id="demo">
        <span @click="clickHandle">{{message}}</span>
      </p>
      <script>
        //数据
        let obj = {
          message:"hello Vue"
        };
        //声明式渲染
        var vm = new Vue({
          el:"#demo",
          data:obj,
          methods:{
            clickHandle(){
                alert("click")
                }
          }
        });
      </script>
    </body>
    </html>
    Nach dem Login kopieren
    Die Wirkung ist wie folgt:

    3. v-html

    v-html, der Parametertyp ist string,

    wird zum Aktualisieren von innerHTML verwendet und der

    string

    wird akzeptiert von

    führt keine Kompilierung und andere Vorgänge durch,

    verarbeitet es wie normales HTML

    Der Code lautet wie folgt

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title>Vue的指令</title>
      <script src="../vue.js"></script>
    </head>
    <body>
    <!-- HTML模版 -->
    <p id="demo" v-html="HTML"></p>
    <script>
      //数据
      let obj = {
        HTML:"<p>Hello World</p>"
      };
      var vm = new Vue({
        el:"#demo",
        data:obj  })
    </script>
    </body>
    </html>
    Nach dem Login kopieren

    Der Der Effekt ist wie folgt

    Weitere integrierte Anweisungen finden Sie auf der offiziellen Website: Vue.js-Anweisungen

    Vorlage

    HTML-Vorlage

    DOM-basierte Vorlage, Vorlagen sind alle analysierbar und gültiges HTML

    Interpolation

    Text: Verwenden Sie die „Mustache“-Syntax (double geschweifte Klammern) {{value}}

    Funktion: auf der Instanz ersetzen Attributwert,

    Wenn sich der Wert ändert, wird der interpolierte Inhalt automatisch aktualisiert

    Natives HTML: Doppelte geschweifte Klammern geben Text aus und analysieren das HTML-Attribut

    nicht: Verwenden Sie v-bind für die Bindung, das auf Änderungen reagieren kann

    JavaScript verwendenAusdruck: Sie können einfache Ausdrücke schreiben Die Vorlage ersetzt das hängende Element. Am Element hängende Inhalte werden ignoriert.

    Der Code lautet wie folgt

    Haben Sie überraschende Änderungen bemerkt?

    Der Wurzelknoten kann nur einen haben

    Schreiben Sie die HTML-Struktur in ein Paar Skript-Tags und legen Sie type="X-template" fest
    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title>template模板</title>
      <script src="../vue.js"></script>
    </head>
    <body>
      <!--HTML模板-->
      <p id="demo"></p>
      <script>
        //数据
        let obj = {
          html:"<p>String</p>",
          abc:1
        };
        var str = "<p>Hello</p>";
        var vm = new Vue({
          el:"#demo",
          data:obj,
          template:str    })
      </script>
    </body>
    </html>
    Nach dem Login kopieren

    , um den folgenden Effekt zu erzielen:

    ist beim Schreiben in Skript-Tags immer noch relativ begrenzt.

    Wenn andere Dateien ebenfalls diese Struktur haben, kann

    nicht wiederverwendet werden.
    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title>template模板</title>
      <script src="../vue.js"></script>
    </head>
    <body>
      <!--HTML模板-->
      <p id="demo">
        <span>vue</span>
      </p>
      <script type="x-template" id="temp">
        <p>
          Hello,{{abc}},
          <span>sunday</span>
        </p>
      </script>
      <script>
        //数据
        let obj = {
          html:"<p>String</p>",
          abc:1
        };
        var vm = new Vue({
          el:"#demo",
          data:obj,
          template:"#temp"
        });
      </script>
    </body>
    </html>
    Nach dem Login kopieren

    Vorlagen-Renderfunktion

    Renderfunktion

    Attribute des Renderoptionsobjekts

    createElement(tag name, {data object}, [child element]);

    Die Unterelemente sind Text oder Arrays

    Lassen Sie uns einen Code zur Demonstration verwenden

    Der Effekt ist wie folgt

    Zusammenfassung

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title>render函数</title>
      <script src="../vue.js"></script>
      <style type="text/css">
        .bg{
          background: #ee0000;
        }
      </style>
    </head>
    <body>
      <p id="demo"></p>
      <script>
        //数据
        let obj = {
        };
        var vm = new Vue({
          el:"#demo",
          data:obj,
          render(createElement){
            return createElement(
              //元素名
              "ul",
              //数据对象
              {
                class:{
                  bg:true
                }
               },
              //子元素
              [
                createElement("li",1),
                createElement("li",2),
                createElement("li",3)
              ]
            );
          }
        })
      </script>
    </body>
    </html>
    Nach dem Login kopieren

    Das obige ist der detaillierte Inhalt vonDiskussion über Komponenten und Vorlagen in Vue.js. 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

    Video Face Swap

    Video Face Swap

    Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

    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)

    Einfaches JavaScript-Tutorial: So erhalten Sie den HTTP-Statuscode Einfaches JavaScript-Tutorial: So erhalten Sie den HTTP-Statuscode Jan 05, 2024 pm 06:08 PM

    JavaScript-Tutorial: So erhalten Sie HTTP-Statuscode. Es sind spezifische Codebeispiele erforderlich. Vorwort: Bei der Webentwicklung ist häufig die Dateninteraktion mit dem Server erforderlich. Bei der Kommunikation mit dem Server müssen wir häufig den zurückgegebenen HTTP-Statuscode abrufen, um festzustellen, ob der Vorgang erfolgreich ist, und die entsprechende Verarbeitung basierend auf verschiedenen Statuscodes durchführen. In diesem Artikel erfahren Sie, wie Sie mit JavaScript HTTP-Statuscodes abrufen und einige praktische Codebeispiele bereitstellen. Verwenden von XMLHttpRequest

    So erhalten Sie auf einfache Weise HTTP-Statuscode in JavaScript So erhalten Sie auf einfache Weise HTTP-Statuscode in JavaScript Jan 05, 2024 pm 01:37 PM

    Einführung in die Methode zum Abrufen des HTTP-Statuscodes in JavaScript: Bei der Front-End-Entwicklung müssen wir uns häufig mit der Interaktion mit der Back-End-Schnittstelle befassen, und der HTTP-Statuscode ist ein sehr wichtiger Teil davon. Das Verstehen und Abrufen von HTTP-Statuscodes hilft uns, die von der Schnittstelle zurückgegebenen Daten besser zu verarbeiten. In diesem Artikel wird erläutert, wie Sie mithilfe von JavaScript HTTP-Statuscodes erhalten, und es werden spezifische Codebeispiele bereitgestellt. 1. Was ist ein HTTP-Statuscode? HTTP-Statuscode bedeutet, dass der Dienst den Dienst anfordert, wenn er eine Anfrage an den Server initiiert

    Tiefer Einblick: Was ist das Django-Framework? Tiefer Einblick: Was ist das Django-Framework? Jan 19, 2024 am 09:23 AM

    Das Django-Framework ist ein Python-Framework für Webanwendungen, das eine einfache und leistungsstarke Möglichkeit zum Erstellen von Webanwendungen bietet. Tatsächlich hat sich Django zu einem der beliebtesten Python-Webentwicklungs-Frameworks entwickelt und ist für viele Unternehmen, darunter Instagram und Pinterest, zur ersten Wahl geworden. Dieser Artikel befasst sich mit dem Django-Framework, einschließlich grundlegender Konzepte und wichtiger Komponenten sowie spezifischer Codebeispiele. Django-GrundkonzepteDjan

    Vue.js vs. React: projektspezifische Überlegungen Vue.js vs. React: projektspezifische Überlegungen Apr 09, 2025 am 12:01 AM

    Vue.js eignet sich für kleine und mittelgroße Projekte und schnelle Iterationen, während React für große und komplexe Anwendungen geeignet ist. 1) Vue.js ist einfach zu bedienen und für Situationen geeignet, in denen das Team nicht ausreicht oder die Projektskala klein ist. 2) React hat ein reichhaltigeres Ökosystem und eignet sich für Projekte mit hoher Leistung und komplexen funktionalen Bedürfnissen.

    Ist Vue.js schwer zu lernen? Ist Vue.js schwer zu lernen? Apr 04, 2025 am 12:02 AM

    Vue.js ist nicht schwer zu lernen, insbesondere für Entwickler mit einer JavaScript -Stiftung. 1) Sein progressives Design und das reaktionsschnelle System vereinfachen den Entwicklungsprozess. 2) Komponentenbasierte Entwicklung macht das Codemanagement effizienter. 3) Die Nutzungsbeispiele zeigen eine grundlegende und fortgeschrittene Verwendung. 4) Häufige Fehler können durch VEDEVTOOLS debuggen werden. 5) Leistungsoptimierung und Best Practices, z. B. die Verwendung von V-IF/V-Shows und Schlüsselattributen, können die Anwendungseffizienz verbessern.

    Wird Vue für Frontend oder Backend verwendet? Wird Vue für Frontend oder Backend verwendet? Apr 03, 2025 am 12:07 AM

    Vue.js wird hauptsächlich für die Front-End-Entwicklung verwendet. 1) Es handelt sich um ein leichtes und flexibles JavaScript-Framework, das sich auf den Aufbau von Benutzeroberflächen und einseitigen Anwendungen konzentriert. 2) Der Kern von Vue.js ist das reaktionsschnelle Datensystem, und die Ansicht wird automatisch aktualisiert, wenn sich die Daten ändert. 3) Es unterstützt die Komponentenentwicklung und die Benutzeroberfläche kann in unabhängige und wiederverwendbare Komponenten aufgeteilt werden.

    So implementieren Sie ein elektronisches Online-Signatursystem mit WebSocket und JavaScript So implementieren Sie ein elektronisches Online-Signatursystem mit WebSocket und JavaScript Dec 18, 2023 pm 03:09 PM

    Überblick über die Verwendung von WebSocket und JavaScript zur Implementierung eines elektronischen Online-Signatursystems: Mit dem Aufkommen des digitalen Zeitalters werden elektronische Signaturen in verschiedenen Branchen häufig verwendet, um herkömmliche Papiersignaturen zu ersetzen. Als Vollduplex-Kommunikationsprotokoll kann WebSocket eine bidirektionale Datenübertragung in Echtzeit mit dem Server durchführen. In Kombination mit JavaScript kann ein elektronisches Online-Signatursystem implementiert werden. In diesem Artikel wird erläutert, wie Sie mit WebSocket und JavaScript ein einfaches Online-Programm entwickeln

    Ein tiefer Einblick in gängige Sonderzeichen unter Linux Ein tiefer Einblick in gängige Sonderzeichen unter Linux Mar 14, 2024 pm 02:54 PM

    Als häufig verwendetes Open-Source-Betriebssystem verfügt das Linux-Betriebssystem über starke Anpassbarkeit und Flexibilität. Bei der Nutzung von Linux-Systemen stoßen wir häufig auf die Verarbeitung verschiedener Sonderzeichen. Diese Sonderzeichen haben in der Befehlszeile eine besondere Bedeutung und können viele erweiterte Funktionen implementieren. Dieser Artikel befasst sich mit den gängigen Sonderzeichen unter Linux und stellt deren Verwendung anhand konkreter Codebeispiele im Detail vor. Platzhalter: Platzhalter sind Sonderzeichen, die zum Zuordnen von Dateinamen verwendet werden. Zu den üblichen Platzhaltern gehören *,?, [] usw. Hier sind mehrere

    See all articles