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:
<!-- 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:
|
<<: So installieren Sie Nginx in Docker
>>: MySQL-Variablenprinzipien und Anwendungsbeispiele
Antd+React+Webpack ist häufig die Standardkombina...
Wenn Sie kein Linux-System haben, finden Sie unte...
Inhaltsverzeichnis Code-Optimierung Verwenden der...
Inhaltsverzeichnis 1. vorErstellen & erstellt...
Ich bin kürzlich auf einen Fehler gestoßen, als i...
Erstens: Stellen Sie zunächst sicher, dass die Ser...
Inhaltsverzeichnis 1 Versprechen Unterbrechen Sie...
Inhaltsverzeichnis 1. Routing-Animation 2. Gruppe...
Apache Log4j2 meldete eine Sicherheitslücke auf n...
1. Vue – Das erste Vue-CLI-Programm Die Entwicklu...
•Es gibt viele Selektoren in CSS. Was passiert, w...
Inhaltsverzeichnis 1. Oberflächliche Kopie 1. Obj...
Das Setup wird zum Schreiben kombinierter APIs ve...
Über Win Docker-Desktop möchte ich mich mit der C...
Inhaltsverzeichnis Datenvolumen Anonyme und benan...