So implementieren Sie ein Dropdown-Feld mit Mehrfachauswahl in Vue
So implementieren Sie ein Dropdown-Feld mit Mehrfachauswahl in Vue
In der Vue-Entwicklung ist das Dropdown-Feld eine der häufigsten Formularkomponenten. Normalerweise verwenden wir Radio-Dropdown-Felder, um eine Option auszuwählen. Manchmal müssen wir jedoch ein Dropdown-Feld mit Mehrfachauswahl implementieren, damit Benutzer mehrere Optionen gleichzeitig auswählen können. In diesem Artikel stellen wir vor, wie man ein Mehrfachauswahl-Dropdown-Feld in Vue implementiert, und stellen spezifische Codebeispiele bereit.
1. Verwenden Sie die Element UI-Komponentenbibliothek
Element UI ist eine auf Vue basierende Desktop-Komponentenbibliothek, die einen umfangreichen Satz an UI-Komponenten und -Tools bereitstellt. In Element UI gibt es eine Komponente namens Select, mit der Dropdown-Boxen implementiert werden können. Diese Komponente unterstützt den Mehrfachauswahlmodus, der aktiviert werden kann, indem das Mehrfachattribut auf „true“ gesetzt wird. Hier ist ein einfaches Beispiel:
<el-select v-model="selectedOptions" multiple> <el-option v-for="option in options" :key="option.value" :label="option.label" :value="option.value"></el-option> </el-select>
data() { return { options: [ { value: 'option1', label: '选项1' }, { value: 'option2', label: '选项2' }, { value: 'option3', label: '选项3' } ], selectedOptions: [] }; }
Im obigen Code verwenden wir die V-Model-Direktive, um ein Array selectedOptions zu binden, um die vom Benutzer ausgewählten Optionen zu speichern. Durch Festlegen des Mehrfachattributs auf „True“ kann das Dropdown-Feld Mehrfachauswahlen unterstützen.
2. Benutzerdefinierte Mehrfachauswahl-Dropdown-Box-Komponente
Zusätzlich zur Verwendung der von Element UI bereitgestellten Komponentenbibliothek können wir auch Mehrfachauswahl-Dropdown-Boxen entsprechend unseren eigenen Anforderungen implementieren. Das Folgende ist ein Beispielcode für eine benutzerdefinierte Dropdown-Box-Komponente mit Mehrfachauswahl:
<template> <div class="dropdown" @click="toggleDropdown"> <div class="selected-options"> <span v-if="selectedOptions.length === 0">请选择...</span> <span v-else> <span v-for="option in selectedOptions" :key="option.value"> {{ option.label }} <span class="remove" @click.stop="removeOption(option)">✖</span> </span> </span> </div> <div class="dropdown-list" v-show="showDropdown"> <span v-for="option in options" :key="option.value" @click="toggleOption(option)"> <input type="checkbox" :value="option.value" :checked="isChecked(option)"> {{ option.label }} </span> </div> </div> </template> <script> export default { data() { return { options: [ { value: 'option1', label: '选项1' }, { value: 'option2', label: '选项2' }, { value: 'option3', label: '选项3' } ], selectedOptions: [], showDropdown: false }; }, methods: { toggleDropdown() { this.showDropdown = !this.showDropdown; }, toggleOption(option) { if (this.isSelected(option)) { this.removeOption(option); } else { this.addOption(option); } }, isSelected(option) { return this.selectedOptions.some(selectedOption => selectedOption.value === option.value); }, addOption(option) { if (!this.isSelected(option)) { this.selectedOptions.push(option); } }, removeOption(option) { this.selectedOptions = this.selectedOptions.filter(selectedOption => selectedOption.value !== option.value); }, isChecked(option) { return this.isSelected(option); } } }; </script> <style scoped> .dropdown { position: relative; display: inline-block; } .selected-options { border: 1px solid #aaa; padding: 5px; cursor: pointer; } .dropdown-list { position: absolute; top: 100%; left: 0; width: 100%; max-height: 200px; overflow-y: auto; border: 1px solid #aaa; background-color: #fff; padding: 5px; } .remove { margin-left: 5px; cursor: pointer; } </style>
Im obigen Code verwenden wir eine Variable selectedOptions, um die vom Benutzer ausgewählten Optionen zu speichern. Erweitern oder reduzieren Sie das Dropdown-Feld, indem Sie auf einen Teil des Dropdown-Feld-Containers klicken, schalten Sie den ausgewählten Status um, indem Sie auf jede Option klicken, und verwenden Sie das Array selectedOptions, um die ausgewählten Optionen zu speichern. Die Methode „removeOption“ wird zum Entfernen von Optionen verwendet, und die Methode „isChecked“ wird verwendet, um zu bestimmen, ob eine Option ausgewählt ist. Diese Komponente kann in andere Komponenten eingeführt und verwendet werden.
Zusammenfassung
Um ein Mehrfachauswahl-Dropdown-Feld in Vue zu implementieren, können wir die von Element UI bereitgestellte Select-Komponente verwenden und das Mehrfachattribut auf true setzen. Darüber hinaus können wir Komponenten auch anpassen, um Dropdown-Felder mit Mehrfachauswahl zu implementieren und sie an unsere eigenen Bedürfnisse anzupassen. Die oben genannten Methoden zur Implementierung von Mehrfachauswahl-Dropdown-Feldern sind hoffentlich hilfreich.
Das obige ist der detaillierte Inhalt vonSo implementieren Sie ein Dropdown-Feld mit Mehrfachauswahl in Vue. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Sie können der VUE -Taste eine Funktion hinzufügen, indem Sie die Taste in der HTML -Vorlage an eine Methode binden. Definieren Sie die Methode und schreiben Sie die Funktionslogik in der VUE -Instanz.

Die Verwendung von Bootstrap in Vue.js ist in fünf Schritte unterteilt: Startstrap installieren. Bootstrap in main.js. Verwenden Sie die Bootstrap -Komponente direkt in der Vorlage. Optional: benutzerdefinierter Stil. Optional: Verwenden Sie Plug-Ins.

Es gibt drei Möglichkeiten, sich auf JS -Dateien in Vue.js zu beziehen: Geben Sie den Pfad direkt mit dem & lt; Skript & gt an. Etikett;; Dynamischer Import mit dem montierten () Lebenszyklushaken; und importieren über die Vuex State Management Library.

Mit der Watch -Option in Vue.js können Entwickler auf Änderungen in bestimmten Daten anhören. Wenn sich die Daten ändert, löst sich eine Rückruffunktion aus, um Aktualisierungsansichten oder andere Aufgaben auszuführen. Zu den Konfigurationsoptionen gehören unmittelbar, die festlegen, ob ein Rückruf sofort ausgeführt werden soll, und Deep, das feststellt, ob Änderungen an Objekten oder Arrays rekursiv anhören sollen.

VUE.JS hat vier Methoden, um zur vorherigen Seite zurückzukehren: $ router.go (-1) $ router.back () verwendet & lt; Router-Link to = & quot;/& quot; Komponentenfenster.history.back () und die Methodenauswahl hängt von der Szene ab.

Implementieren Sie Marquee/Text-Scrolling-Effekte in VUE unter Verwendung von CSS-Animationen oder Bibliotheken von Drittanbietern. In diesem Artikel wird die Verwendung von CSS -Animation vorgestellt: Bildlauftext erstellen und Text mit & lt; div & gt;. Definieren Sie CSS -Animationen und setzen Sie Überlauf: Versteckt, Breite und Animation. Definieren Sie Keyframes, setzen Sie Transformation: Translatex () am Anfang und am Ende der Animation. Passen Sie die Animationseigenschaften wie Dauer, Bildlaufgeschwindigkeit und Richtung an.

Pagination ist eine Technologie, die große Datensätze in kleine Seiten aufteilt, um die Leistung und die Benutzererfahrung zu verbessern. In VUE können Sie die folgende integrierte Methode zum Paging verwenden: Berechnen Sie die Gesamtzahl der Seiten: TotalPages () TRAVERSAL-Seitennummer: V-für Anweisung, um die aktuelle Seite festzulegen: aktuelle Seite

Funktionsabfangen in VUE ist eine Technik, mit der die Häufigkeit, mit der eine Funktion eingerufen wird, innerhalb eines bestimmten Zeitraums aufgerufen wird und Leistungsprobleme verhindern. Die Implementierungsmethode lautet: Importieren Sie die Lodash -Bibliothek: importieren {dunounce} aus 'lodash'; Verwenden Sie die Dabounce -Funktion, um eine Intercept -Funktion zu erstellen: const dabouncedFunction = dunounce (() = & gt; { / logical /}, 500); Rufen Sie die Abfangfunktion auf und die Steuerfunktion wird höchstens einmal in 500 Millisekunden aufgerufen.
