Vue3.0 implementiert die Kapselung von Kontrollkästchenkomponenten

Vue3.0 implementiert die Kapselung von Kontrollkästchenkomponenten

In diesem Artikelbeispiel wird der spezifische Code von vue3.0 zur Implementierung der Kontrollkästchenkomponentenkapselung zu Ihrer Information geteilt. Der spezifische Inhalt ist wie folgt

Allgemeine Schritte:

  • Realisieren Sie den Auswahl- und Abwahleffekt der Komponente selbst
  • Implementieren Sie die V-Model-Direktive der Komponente
  • In @vueuse/core -Funktionsschreiben umgewandelt
<!-- Grundlegender Komponentenstil -->
<Vorlage>
  <div Klasse="xtx-checkbox" @click="changeChecked()">
    <i v-if="geprüft" class="iconfont icon-geprüft"></i>
    <i v-else class="iconfont icon-unchecked"></i>
    <span v-if="$slots.default"><slot /></span>
  </div>
</Vorlage>

<Skript>
importiere { ref } von 'vue'
Standard exportieren {
  Name: "XtxCheckbox",
  aufstellen () {
    const geprüft = ref(false)
    const changeChecked = () => {
      geprüfter Wert = !geprüfter Wert
    }
    return { geprüft, geändert geprüft }
  }
}
</Skript>

<style scoped lang="weniger"> 
 // Der Stil kann nach Bedarf geändert werden.xtx-checkbox {
  Anzeige: Inline-Block;
  Rand rechts: 2px;
  .icon-geprüft {
    Farbe: @xtxColor;
    ~ Spanne {
      Farbe: @xtxColor;
    }
  }
  ich {
    Position: relativ;
    oben: 1px;
  }
  Spanne {
    Rand links: 2px;
  }
}
</Stil>
// Hinweis: Wenn Sie es global verwenden müssen, müssen Sie es als globale Komponente registrieren
<!-- Implementieren Sie die v-model-Direktive -->
... Lassen Sie die Struktur <script> weg.
importiere { toRef } von 'vue'
Standard exportieren {
  Name: "XtxCheckbox",
  Requisiten: {
    modelValue: { // Der Standardbindungswert von v-model ist modelValue
      Typ: Boolean,
      Standard: false
    }
  },
  setup (eigenschaften, { emit }) {
    const checked = toRef(props, 'modelValue') // Definieren Sie „checked“, um den empfangenen Booleschen Wert zu speichern const changeChecked = () => {
      emit('update:modelValue', !checked.value) // Übergebe den Wert an die übergeordnete Komponente, um das Kontrollkästchen zu aktivieren}
    return { geprüft, geändert geprüft }
  }
}
</Skript>
... Elliptischer Stil
<!-- Grundlegende Verwendung -->
<!-- Benutzerdefinierter Kontrollkästchentest -->
<xtx-checkbox v-model="checked">Benutzerdefiniertes Kontrollkästchen</xtx-checkbox>
<Skript>
importiere { ref } von 'vue'
Standard exportieren {
  Name: 'Unterkategorie',
  aufstellen () {
    const geprüft = ref(true)
    return { geprüft}
  }
}
</Skript> 

<!-- @vueuse/Kernfunktion schreiben -->
<Vorlage>
  <div Klasse="xtx-checkbox" @click='checked=!checked'>
    <i v-if="geprüft" class="iconfont icon-geprüft"></i>
    <i v-else class="iconfont icon-unchecked"></i>
    <span>
      <Steckplatz />
    </span>
  </div>
</Vorlage>

<Skript>
importiere { useVModel } von '@vueuse/core' // erfordert npm i @vueuse/core oder yarn add @vueuse/core
Standard exportieren {
  Name: "XtxCheckbox",
  Requisiten: {
    Modellwert: {
      Typ: Boolean,
      Standard: false
    }
  },
  setup (eigenschaften, { emit }) {
    // Den von der übergeordneten Komponente übergebenen Wert von modelValue abrufen const checked = useVModel(props, 'modelValue', emit)
    return { geprüft}
  }
}
</Skript>


// Verwendungsmethode wie oben <xtx-checkbox v-model="checked">Benutzerdefiniertes Kontrollkästchen</xtx-checkbox>
<Skript>
importiere { ref } von 'vue'
Standard exportieren {
  Name: 'Unterkategorie',
  aufstellen () {
    const geprüft = ref(true)
    return { geprüft}
  }
}
</Skript>

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Vue3-Kompilierungsprozess - Quellcodeanalyse
  • Details zu 7 Arten der Komponentenkommunikation in Vue3
  • Detaillierte Erläuterung der Vue3-Kapselungsfunktion für Nachrichtenaufforderungsinstanzen
  • Der Unterschied und die Verwendung des Kommunikationsbusses der Bruderkomponenten von Vue2 und Vue3
  • Verwenden von vue3 zum Implementieren eines Beispiels für die Kapselung von Zählfunktionskomponenten
  • Vue3.0 implementiert die Kapselung des Dropdown-Menüs
  • Vergleich der Vorteile von vue3 und vue2
  • Praktischer Bericht über die Entwicklung von Vue3- und TypeScript-Projekten
  • Zusammenfassung der Projektentwicklungspraxis in Kombination mit Vue3 von TypeScript
  • Vue3 AST Parser-Quellcode-Analyse

<<:  So installieren Sie Nginx in Docker

>>:  MySQL-Variablenprinzipien und Anwendungsbeispiele

Artikel empfehlen

Zusammenfassung der Verwendung von berechneten Vue-Eigenschaften und -Listenern

1. Berechnete Eigenschaften und Listener 1.1 Bere...

Detaillierte Erläuterung gängiger MySQL-Befehle im Linux-Terminal

Aufschlag: # chkconfig --list Alle Systemdienste ...

Details zur Verwendung des Vue-Slots

Inhaltsverzeichnis 1. Warum Slots verwenden? 1.1 ...

Detaillierte Erklärung, wie NGINX PV, UV und unabhängige IP der Website zählt

Nginx: PV, UV, unabhängige IP Jeder, der Websites...

Detaillierte Erläuterung des Speichermodells der JVM-Serie

Inhaltsverzeichnis 1. Speichermodell und Laufzeit...

Detaillierte Erklärung des Lebenszyklus einer Angular-Komponente (I)

Inhaltsverzeichnis Überblick 1. Hook-Aufrufreihen...

Die umfassendste Sammlung von Front-End-Interviewfragen

HTML und CSS 1. Verständnis und Kenntnisse von WE...

Detaillierte Prozessanalyse der Docker-Bereitstellung des Snail-Cinema-Systems

Umwelterklärung Host-Betriebssystem: Cetnos7.9 Mi...

React-Methode zum Anzeigen von Daten auf Seiten

Inhaltsverzeichnis Übergeordnete Komponente „list...