Änderungen an der Rendering-APIDiese Änderung betrifft keine <template>-Benutzer
Renderfunktionsparameter// 2.0 Rendering-Funktion export default { rendern(h) { return h('div') } } // 3.x-Syntax export default { rendern() { return h('div') } } Änderungen an der Renderfunktionssignatur// 2.x Standard exportieren { rendern(h) { return h('div') } } // 3.x importiere { h, reaktiv } von 'vue' Standard exportieren { setup(Eigenschaft, {Slots, Attribute, emit}) { const state = reaktiv({ Anzahl: 0 }) Funktion Inkrement() { Zustand.Anzahl++ } // Zurück zur Renderfunktion return () => h( 'div', { bei Klick: Inkrement }, Statusanzahl ) } } Formatierung von VNode-Props// 2.x { Klasse: ['Schaltfläche', 'ist umrissen'], Stil: {Farbe: '#fffff'}, attr: {id: 'senden'}, domProps: {innerHTML: ''}, auf: {click: submitForm}, Schlüssel: 'Senden-Schaltfläche' } // 3.x VNode-Struktur ist flach { Klasse: ['Schaltfläche', 'ist umrissen'], Stil: { Farbe: '#34495E' }, ID: "Senden", innerHTML: '', beim Klicken: Formular absenden, Schlüssel: 'Senden-Schaltfläche' } Slot-VereinigungGeänderte normale Slots und eingeschränkte Slots
// 2.x h(LayoutComponent, [ h('div', {slot: 'header'}, dieser.header), h('div', {slot: 'header'}, dieser.header) ]) // Bereichssteckplatz: // 3.x h(LayoutComponent, {}, { Header: () => h('div', dieser.Header), Inhalt: () => h('div', dieser.Inhalt) }) // Wenn Sie Scoped Slots programmgesteuert einführen müssen, werden sie jetzt in der Option $slots vereinheitlicht // 2.x Scoped Slots dies.$scopedSlots.header // 3.x schreibe this.$slots.header $listeners entfernen Das In Vue2 können Sie this.attrs und this.attrs und this.listeners verwenden, um auf die Attribute und Ereignis-Listener zuzugreifen, die jeweils an die Komponente übergeben werden. In Kombination mit inheritAttrs: false können Entwickler diese Attribute und Listener auf andere Elemente statt auf das Stammelement anwenden. <Vorlage> <Bezeichnung> <Eingabetyp="Text" v-bind="$attrs" v-on="$listeners"> </Bezeichnung> </Vorlage> <Skript> Standard exportieren { inheritAttrs: false } </Skript> Im virtuellen DOM von Vue sind Ereignis-Listener jetzt nur noch Attribute mit dem Präfix „on“, was sie zu einem Teil des attrs-Objekts macht, sodass Listener entfernt werden. <Vorlage> <Bezeichnung> <Eingabetyp="Text" v-bind="$attrs" /> </Bezeichnung> </Vorlage> <Skript> Standard exportieren { inheritAttrs: false } // Wenn diese Komponente ein ID-Attribut und einen v-on:close-Listener erhält, sieht das $attrs-Objekt nun folgendermaßen aus { ID: "meine Eingabe", onClose: () => console.log('Schließen-Ereignis ausgelöst') } </Skript> $attrs umfasst jetzt Klasse und StilJetzt enthält $attr alle Attribute, einschließlich Klasse und Stil In 2.x behandelt das virtuelle DOM Klasse und Stil speziell, sodass sie nicht in $attr enthalten sind, was bei Verwendung von inheritAttr: false zu Nebenwirkungen führt.
<Vorlage> <Bezeichnung> <Eingabetyp="Text" v-bind="$attrs" /> </Bezeichnung> </Vorlage> <Skript> Standard exportieren { inheritAttrs: false } </Skript> <!-- Schreiben --> <meine-Komponente id="meine-id" class="meine-klasse"></meine-Komponente> <!-- vue2 wird generieren --> <label class="meine-klasse"> <input type="text" id="meine-id" /> </Bezeichnung> <!-- vue3 wird generieren --> <Bezeichnung> <input type="text" id="meine-id" class="meine-klasse" /> </Bezeichnung> Oben finden Sie eine ausführliche Erläuterung der inkompatiblen Änderungen der Rendering-Funktionen in vue3. Weitere Informationen zu inkompatiblen Änderungen der Vue-Rendering-Funktionen finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
>>: So ermitteln Sie die Ausführungszeit eines Befehls oder Prozesses in Linux
Inhaltsverzeichnis Vorwort Einrichten mit Vue CLI...
Früher dachte ich, dass Skripte überall in HTML p...
Bei der Verwendung von Docker-Images können Image...
Optimieren von Abfragen Verwenden der Explain-Anw...
Inhaltsverzeichnis Überblick 1. Verstehen Sie die...
Vorbereitung 1. Überprüfen Sie, ob die GPU CUDA u...
In diesem Artikelbeispiel wird der spezifische Co...
Es ist keine Übertreibung, zu sagen, dass Hyperlin...
Inhaltsverzeichnis Technologie-Stack Wirkung anal...
Tatsächlich ist es sehr einfach, Axios in Vue zu ...
Dieser Artikel beschreibt, wie Sie Apache auf ein...
Inhaltsverzeichnis Voraussetzungen Effekt verwend...
Inhaltsverzeichnis 1. Über die visuelle Schnittst...
Vorwort Beim Installieren der ausführbaren Datei ...
Inhaltsverzeichnis Überblick Virtueller Dom Prinz...