Heim Web-Frontend View.js Entwicklung von Vue-Komponenten: Implementierung eines mehrstufigen Linkage-Selektors

Entwicklung von Vue-Komponenten: Implementierung eines mehrstufigen Linkage-Selektors

Nov 24, 2023 am 08:36 AM
vue组件 多级联动 Selektorimplementierung

Entwicklung von Vue-Komponenten: Implementierung eines mehrstufigen Linkage-Selektors

Vue-Komponentenentwicklung: Implementierung eines mehrstufigen Verknüpfungsselektors

In der Front-End-Entwicklung ist ein mehrstufiger Verknüpfungsselektor eine häufige Anforderung, z. B. die Auswahl von Provinzen und Städten, die Auswahl von Jahr, Monat und Tag usw. In diesem Artikel wird anhand spezifischer Code-Implementierungsbeispiele erläutert, wie Vue-Komponenten zum Implementieren mehrstufiger Verknüpfungsselektoren verwendet werden.

Wie implementiert man eine mehrstufige Verknüpfungsauswahl?

Um mehrstufige Verknüpfungsselektoren zu implementieren, müssen Sie die Komponentenentwicklungsidee von Vue verwenden, die einen großen Selektor in mehrere Unterkomponenten aufteilt, die für die Darstellung jeder Optionsebene verantwortlich sind. Jedes Mal, wenn sich die Ebenenauswahl ändert, müssen die Optionen der nachfolgenden Ebenen aktualisiert werden, was die Verwendung eines Kommunikationsmechanismus zwischen Vue-Komponenten erfordert.

Darüber hinaus muss der Selektor den Anfangswert von außen empfangen und Ereignisbenachrichtigungen nach außen senden, wenn sich die Auswahl ändert. Dies kann mit props und $emit erreicht werden.

Lassen Sie uns diese mehrstufige Verknüpfungsauswahlkomponente Schritt für Schritt implementieren.

Schritt 1: Unterkomponenten definieren

Wir definieren zunächst die Selektor-Unterkomponente für jede Ebene. Das Folgende ist der Code für eine einfache Unterkomponente des Provinzselektors:

<template>
  <select v-model="selected">
    <option value="">请选择</option>
    <option v-for="item in options" :value="item">{{ item }}</option>
  </select>
</template>

<script>
export default {
  props: {
    options: {
      type: Array,
      required: true
    },
    value: {
      type: String,
      default: ''
    }
  },
  data() {
    return {
      selected: this.value
    }
  },
  watch: {
    selected(newValue) {
      this.$emit('change', newValue)
    }
  }
}
</script>
Nach dem Login kopieren

Codeerklärung:

  • Verwenden Sie das Select-Tag, um das Dropdown-Optionsfeld zu rendern, und verwenden Sie das V-Modell, um den Wert des Stroms zu binden Option;
  • Verwenden Sie v-for, um die von der übergeordneten Komponente übergebenen Optionen dynamisch zu generieren.
  • Verwenden Sie Requisiten, um die von der übergeordneten Komponente übergebenen Optionen und Werte zu empfangen. und initialisieren Sie den ausgewählten Wert über data();
  • Verwenden Sie watch, um Änderungen im ausgewählten Wert zu überwachen, geben Sie ein Änderungsereignis aus, wenn sich die Option ändert, und benachrichtigen Sie die übergeordnete Komponente über den neuen Auswahlwert.

Schritt 2: Definieren Sie die übergeordnete Komponente

Als nächstes definieren wir die übergeordnete Komponente des mehrstufigen Verknüpfungsselektors. Diese Komponente ist für die Darstellung aller untergeordneten Komponenten und die Aktualisierung der Optionen nachfolgender untergeordneter Komponenten verantwortlich, wenn sich die Optionen ändern.

Das Folgende ist der Code für einen einfachen zweistufigen Verknüpfungsselektor:

<template>
  <div>
    <CitySelect :options="provinces" v-model="selectedProvince"/>
    <CitySelect :options="cities" v-model="selectedCity"/>
  </div>
</template>

<script>
import CitySelect from './CitySelect.vue'

export default {
  components: {
    CitySelect
  },
  data() {
    return {
      provinces: ['广东', '江苏', '浙江'],
      cities: {
        '广东': ['广州', '深圳'],
        '江苏': ['南京', '苏州'],
        '浙江': ['杭州', '宁波']
      },
      selectedProvince: '',
      selectedCity: ''
    }
  },
  watch: {
    selectedProvince(newValue) {
      this.selectedCity = ''
      if (newValue) {
        this.cities = this.$data.cities[newValue]
      } else {
        this.cities = []
      }
    }
  }
}
</script>
Nach dem Login kopieren

Codeerklärung:

  • Verwenden Sie zwei CitySelect-Unterkomponenten in der Vorlage, um die Auswahlfelder für Provinz und Stadt darzustellen, und binden Sie das aktuelle über v- Modell Ausgewählte Provinzen und Städte
  • Definieren Sie in der Datenfunktion zwei Arrays, Provinzen und Städte, und das Städteobjekt speichert alle Städte
  • In watch Überwachen Sie Änderungen in selectedProvince und aktualisieren Sie das Städte-Array, wenn sich die Provinz ändert. Dies wird zum Rendern des Städteauswahlfelds der nächsten Ebene verwendet.
Schritt 3: Alle Unterkomponenten kombinieren

Nachdem wir alle Unterkomponenten und übergeordneten Komponenten definiert haben, müssen wir nur noch alle Unterkomponenten kombinieren, um einen vollständigen mehrstufigen Verknüpfungsselektor zu bilden.

Das Folgende ist der Code eines einfachen dreistufigen Verknüpfungsselektors:

<template>
  <div>
    <RegionSelect :options="provinces" v-model="selectedProvince"/>
    <RegionSelect :options="cities" v-model="selectedCity"/>
    <RegionSelect :options="districts" v-model="selectedDistrict"/>
  </div>
</template>

<script>
import RegionSelect from './RegionSelect.vue'

export default {
  components: {
    RegionSelect
  },
  data() {
    return {
      provinces: ['广东', '江苏', '浙江'],
      cities: {
        '广东': ['广州', '深圳'],
        '江苏': ['南京', '苏州'],
        '浙江': ['杭州', '宁波']
      },
      districts: {
        '广州': ['天河区', '海珠区'],
        '深圳': ['福田区', '南山区'],
        '南京': ['玄武区', '鼓楼区'],
        '苏州': ['姑苏区', '相城区'],
        '杭州': ['上城区', '下城区'],
        '宁波': ['江东区', '江北区']
      },
      selectedProvince: '',
      selectedCity: '',
      selectedDistrict: ''
    }
  },
  watch: {
    selectedProvince(newValue) {
      if (newValue) {
        this.cities = this.$data.cities[newValue]
        this.selectedCity = ''
        this.districts = []
      } else {
        this.cities = []
        this.districts = []
      }
    },
    selectedCity(newValue) {
      if (newValue) {
        this.districts = this.$data.districts[newValue]
        this.selectedDistrict = ''
      } else {
        this.districts = []
      }
    }
  }
}
</script>
Nach dem Login kopieren

Codeerklärung:

    Verwenden Sie drei RegionSelect-Unterkomponenten in der Vorlage, um die Auswahlfelder von Provinzen, Städten und Bezirken jeweils zu rendern und sie über v zu binden -Modell Bestimmen Sie die aktuell ausgewählten Provinzen, Städte und Bezirke.
  • Definieren Sie drei Objekte: Provinzen, Städte und Bezirke. Das Array „Provinzen“ speichert alle Provinzen, das Objekt „Städte“ speichert alle Bezirke selectedProvince, selectedCity und selectedDistrict zeichnen die aktuell ausgewählte Provinz, Stadt und den ausgewählten Bezirk auf.
  • Überwachen Sie Änderungen in selectedProvince und selectedCity in der Überwachung und aktualisieren Sie die Optionen und ausgewählten Werte nachfolgender Auswahlfelder, wenn sich die Provinz oder Stadt ändert.
Der dreistufige Verknüpfungsselektor ist fertiggestellt! Sie können die Komponente in der Vue-Komponentenvorlage referenzieren, wie unten gezeigt:

<template>
  <div>
    <RegionSelect v-model="selectedRegion"/>
  </div>
</template>

<script>
import RegionSelect from './RegionSelect.vue'

export default {
  components: {
    RegionSelect
  },
  data() {
    return {
      selectedRegion: ['广东', '深圳', '南山区']
    }
  }
}
</script>
Nach dem Login kopieren
Zusammenfassung

In diesem Artikel wird erläutert, wie Sie mit Vue-Komponenten mehrstufige Verknüpfungsselektoren implementieren, einschließlich der Definition untergeordneter und übergeordneter Komponenten sowie des Kombinationsprozesses alle untergeordneten Komponenten. Anhand dieses Beispiels können wir die Grundideen der Vue-Komponentenentwicklung und den Kommunikationsmechanismus zwischen Komponenten verstehen. Natürlich müssen bei der tatsächlichen Entwicklung weitere Details berücksichtigt werden, z. B. die asynchrone Datenerfassung, die Änderung des Stils der Unterkomponente selbst usw. Diese Inhalte werden in diesem Artikel nicht behandelt.

Das obige ist der detaillierte Inhalt vonEntwicklung von Vue-Komponenten: Implementierung eines mehrstufigen Linkage-Selektors. 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

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

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)

So verwenden Sie Vue und Element-UI, um die Dropdown-Box-Funktion für mehrstufige Verknüpfungen zu implementieren So verwenden Sie Vue und Element-UI, um die Dropdown-Box-Funktion für mehrstufige Verknüpfungen zu implementieren Jul 20, 2023 pm 11:43 PM

So verwenden Sie Vue und Element-UI zum Implementieren der mehrstufigen Dropdown-Box-Funktion Einführung: In der Webentwicklung ist die mehrstufige Verknüpfung von Dropdown-Boxen eine gängige Interaktionsmethode. Durch Auswahl einer Option in einem Dropdown-Feld kann der Inhalt nachfolgender Dropdown-Felder dynamisch geändert werden. In diesem Artikel wird erläutert, wie Sie mit Vue und Element-UI diese Funktion erreichen, und es werden Codebeispiele bereitgestellt. 1. Vorbereitung Zunächst müssen wir sicherstellen, dass Vue und Element-UI installiert wurden. Es kann über den folgenden Befehl installiert werden: npmins

Vue-Komponentenkommunikation: Verwenden Sie $destroy für die Kommunikation zur Komponentenzerstörung Vue-Komponentenkommunikation: Verwenden Sie $destroy für die Kommunikation zur Komponentenzerstörung Jul 09, 2023 pm 07:52 PM

Vue-Komponentenkommunikation: Verwenden Sie $destroy für die Kommunikation zur Komponentenzerstörung. In der Vue-Entwicklung ist die Komponentenkommunikation ein sehr wichtiger Aspekt. Vue bietet verschiedene Möglichkeiten zur Implementierung der Komponentenkommunikation, z. B. Requisiten, Emit, Vuex usw. In diesem Artikel wird eine weitere Methode der Komponentenkommunikation vorgestellt: die Verwendung von $destroy für die Kommunikation zur Komponentenzerstörung. In Vue verfügt jede Komponente über einen Lebenszyklus, der eine Reihe von Lebenszyklus-Hook-Funktionen umfasst. Die Zerstörung von Komponenten gehört ebenfalls dazu

Wie implementiert Vue die Wiederverwendung und Erweiterung von Komponenten? Wie implementiert Vue die Wiederverwendung und Erweiterung von Komponenten? Jun 27, 2023 am 10:22 AM

Mit der kontinuierlichen Weiterentwicklung der Front-End-Technologie hat sich Vue zu einem der beliebtesten Frameworks in der Front-End-Entwicklung entwickelt. In Vue sind Komponenten eines der Kernkonzepte, mit denen Seiten in kleinere, besser verwaltbare Teile zerlegt werden können, wodurch die Entwicklungseffizienz und die Wiederverwendbarkeit des Codes verbessert werden. Dieser Artikel konzentriert sich darauf, wie Vue die Wiederverwendung und Erweiterung von Komponenten implementiert. 1. Vue-Komponenten-Wiederverwendungs-Mixins Mixins sind eine Möglichkeit, Komponentenoptionen in Vue zu teilen. Mit Mixins können Komponentenoptionen aus mehreren Komponenten optimal zu einem einzigen Objekt kombiniert werden

Vue-Praxis: Entwicklung von Datumsauswahlkomponenten Vue-Praxis: Entwicklung von Datumsauswahlkomponenten Nov 24, 2023 am 09:03 AM

Vue Practical Combat: Datumsauswahl-Komponentenentwicklung Einführung: Die Datumsauswahl ist eine Komponente, die häufig in der täglichen Entwicklung verwendet wird. Sie kann Daten einfach auswählen und bietet verschiedene Konfigurationsoptionen. In diesem Artikel wird erläutert, wie Sie mit dem Vue-Framework eine einfache Datumsauswahlkomponente entwickeln und spezifische Codebeispiele bereitstellen. 1. Anforderungsanalyse Vor Beginn der Entwicklung müssen wir eine Anforderungsanalyse durchführen, um die Funktionen und Eigenschaften der Komponenten zu klären. Gemäß den allgemeinen Funktionen der Datumsauswahlkomponente müssen wir die folgenden Funktionspunkte implementieren: Grundfunktionen: können Daten auswählen und

Vue-Komponentenkommunikation: Verwendung von Watch und Computing zur Datenüberwachung Vue-Komponentenkommunikation: Verwendung von Watch und Computing zur Datenüberwachung Jul 10, 2023 am 09:21 AM

Vue-Komponentenkommunikation: Verwendung von Watch und Compute zur Datenüberwachung Vue.js ist ein beliebtes JavaScript-Framework, dessen Kernidee die Komponentisierung ist. In einer Vue-Anwendung müssen Daten zwischen verschiedenen Komponenten übertragen und kommuniziert werden. In diesem Artikel stellen wir vor, wie man Vues Watch und Computing zum Überwachen und Reagieren auf Daten verwendet. watch In Vue ist watch eine Option, mit der Änderungen in einer oder mehreren Eigenschaften überwacht werden können.

So verwenden Sie Bibliotheken von Drittanbietern in Vue-Projekten So verwenden Sie Bibliotheken von Drittanbietern in Vue-Projekten Oct 15, 2023 pm 04:10 PM

Vue ist ein beliebtes JavaScript-Framework, das eine Fülle von Tools und Funktionen bietet, die uns beim Erstellen moderner Webanwendungen unterstützen. Obwohl Vue selbst bereits viele praktische Funktionen bietet, müssen wir manchmal Bibliotheken von Drittanbietern verwenden, um die Fähigkeiten von Vue zu erweitern. In diesem Artikel wird die Verwendung von Bibliotheken von Drittanbietern in Vue-Projekten vorgestellt und spezifische Codebeispiele bereitgestellt. 1. Bibliotheken von Drittanbietern einführen Der erste Schritt zur Verwendung von Bibliotheken von Drittanbietern in einem Vue-Projekt besteht darin, sie einzuführen. Wir können es auf folgende Weise einführen

Vue-Entwicklungshinweise: Umgang mit komplexen Datenstrukturen und Algorithmen Vue-Entwicklungshinweise: Umgang mit komplexen Datenstrukturen und Algorithmen Nov 22, 2023 am 08:08 AM

Bei der Vue-Entwicklung stoßen wir oft auf Situationen, in denen wir mit komplexen Datenstrukturen und Algorithmen zu tun haben. Diese Probleme können eine große Anzahl von Datenoperationen, Datensynchronisierung, Leistungsoptimierung usw. umfassen. In diesem Artikel werden einige Überlegungen und Techniken zum Umgang mit komplexen Datenstrukturen und Algorithmen vorgestellt, um Entwicklern dabei zu helfen, diese Herausforderungen besser zu bewältigen. 1. Auswahl von Datenstrukturen Beim Umgang mit komplexen Datenstrukturen und Algorithmen ist es sehr wichtig, geeignete Datenstrukturen auszuwählen. Vue bietet eine Fülle von Datenstrukturen und -methoden, und Entwickler können die geeignete Datenstruktur entsprechend den tatsächlichen Anforderungen auswählen. Häufig verwendete Zahlen

Wie implementiert man ein mehrstufiges Verknüpfungsmenü in Vue? Wie implementiert man ein mehrstufiges Verknüpfungsmenü in Vue? Jun 25, 2023 pm 07:37 PM

Vue.js ist ein beliebtes Front-End-Framework und viele Websites verwenden Vue.js, um interaktive Benutzeroberflächen zu entwickeln. Eine häufige UI-Komponente ist ein mehrstufiges Menü (auch kaskadierender Selektor genannt), mit dem Benutzer eine Liste einer Option filtern können, indem sie eine andere Option auswählen, was detailliertere Such- oder Navigationsmöglichkeiten ermöglicht. In diesem Artikel stellen wir vor, wie Sie mit Vue.js ein mehrstufiges Verknüpfungsmenü implementieren. Vorbereitung Bevor wir beginnen, müssen wir sicherstellen, dass Vue.js installiert ist.

See all articles