Vue-Komponentenpraxis: Entwicklung von Suchfeldkomponenten
Vue-Komponentenpraxis: Entwicklung von Suchfeldkomponenten
Mit der Entwicklung des Internets werden Suchfunktionen in verschiedenen Anwendungen immer häufiger. Um Benutzern die schnelle Abfrage von Informationen zu erleichtern, ist das Suchfeld zu einem Standardmerkmal jeder Website geworden. In diesem Artikel entwickeln wir eine Suchfeldkomponente über Vue.js.
Unsere Suchfeldkomponente muss über die folgenden Funktionen verfügen:
- Das Eingabefeld kann in Echtzeit auf Benutzereingaben reagieren und suchen, wenn der Benutzer Eingaben durchführt.
- Benutzer können auf die Suchschaltfläche auf der rechten Seite des Eingabefelds klicken zum Suchen;
- Benutzer können die Suchergebnisse unterhalb des Suchfelds sehen.
Um diese Komponente zu implementieren, müssen wir die folgenden Schritte ausführen:
- Vue.js- und Axios-Bibliotheken installieren
Bevor wir mit dem Schreiben von Komponenten beginnen, müssen wir Vue.js- und Axios-Bibliotheken installieren. Vue.js ist ein progressives Framework zum Erstellen von Benutzeroberflächen und axios ist eine Bibliothek zum Senden von HTTP-Anfragen. Beide müssen über npm installiert werden. Geben Sie zur Installation den folgenden Befehl in das Terminal ein:
npm install vue axios --save
- Komponente erstellen
Wir erstellen schnell ein Vue-Projekt über die Vue-CLI und erstellen eine SearchBox.vue-Datei im Verzeichnis src/components, bei dem es sich um unsere Suchfeldkomponenten handelt.
- Schreiben der SearchBox.vue-Komponente
In der SearchBox.vue-Datei müssen wir die Komponente deklarieren und die Vorlage, Daten, Methoden usw. in der Komponente definieren. Das Folgende ist ein einfaches SearchBox.vue-Codebeispiel:
<template> <div class="search-box"> <input type="text" v-model="searchText" @input="search" /> <button @click="search">搜索</button> <ul> <li v-for="result in searchResults" :key="result.id">{{ result.title }}</li> </ul> </div> </template> <script> import axios from 'axios'; export default { name: 'SearchBox', data() { return { searchText: '', searchResults: [], }; }, methods: { search() { axios .get('https://jsonplaceholder.typicode.com/posts', { params: { title: this.searchText }, }) .then((response) => { this.searchResults = response.data; }) .catch((error) => { console.error(error); }); }, }, }; </script> <style scoped> .search-box { display: flex; justify-content: space-between; align-items: center; background-color: #eaeaea; padding: 10px; border-radius: 5px; } ul { list-style: none; margin: 0; padding: 0; } li { padding: 5px; } </style>
Im obigen Code erstellen wir zunächst ein Suchfeld-Div in der Vorlage und platzieren darin ein Eingabefeld und eine Suchschaltfläche. Wir binden den Wert des Eingabefelds über das V-Modell an das Attribut searchText. Wenn sich der Wert des Eingabefelds ändert, ändert sich auch der Wert von searchText entsprechend.
Wir rufen die Suchmethode auf, wenn der Benutzer Inhalte eingibt und auf die Suchschaltfläche klickt. Bei der Suchmethode verwenden wir die Axios-Bibliothek, um eine HTTP-Anfrage zu senden und die Backend-Schnittstelle aufzufordern, Daten abzurufen. In diesem Beispiel verwenden wir die von JSONPlaceholder bereitgestellte virtuelle API. Der vom Benutzer eingegebene Inhalt wird als Abfrageparameter an die Schnittstelle übergeben und die von der Abfrage zurückgegebenen Ergebnisse werden in der folgenden UL angezeigt.
Schließlich haben wir auch das Attribut „scoped“ verwendet, um den Bereich für den Stil der SearchBox-Komponente zu definieren, um zu verhindern, dass sich der Stil auf andere Komponenten auswirkt.
- Verwendung der SearchBox-Komponente in der übergeordneten Komponente
Da wir nun mit dem Schreiben der SearchBox-Komponente fertig sind, sehen wir uns an, wie man sie in der übergeordneten Komponente verwendet. In der übergeordneten Komponente verweisen wir einfach auf die Komponente und übergeben die erforderlichen Eigenschaften. Zum Beispiel:
<template> <div class="app"> <SearchBox /> </div> </template> <script> import SearchBox from '@/components/SearchBox.vue'; export default { components: { SearchBox, }, }; </script> <style> .app { margin: 20px; } </style>
Im obigen Code haben wir die SearchBox-Komponente eingeführt und als Komponente in der übergeordneten Komponente registriert. Stile können über
Zu diesem Zeitpunkt haben wir erfolgreich eine einfache Suchfeldkomponente implementiert. Wenn der Benutzer einen Suchbegriff eingibt, fragen wir die entsprechenden Daten über die Back-End-Schnittstelle ab und zeigen dem Benutzer die Abfrageergebnisse in Echtzeit an.
Fazit
Vue.js ist derzeit eines der beliebtesten Frontend-Frameworks. Seine komponentenbasierten Programmierfunktionen ermöglichen es uns, verschiedene komplexe Anwendungen effizienter und komfortabler zu entwickeln. In diesem Artikel haben wir eine Suchfeldkomponente über Vue.js implementiert. Durch die Instanziierung der Komponente und die Kommunikation mit der Eltern-Kind-Komponente haben wir eine bidirektionale Bindung von Daten, den Aufruf von Methoden und das Auslösen von Ereignissen implementiert. Beherrschen Sie diese grundlegenden Vue.js-Kenntnisse, und ich glaube, Sie beherrschen im Grunde die Entwicklung einer einfachen Vue-Komponente.
Das obige ist der detaillierte Inhalt vonVue-Komponentenpraxis: Entwicklung von Suchfeldkomponenten. 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 Multi-Page-Entwicklung ist eine Möglichkeit, Anwendungen mithilfe des Vue.js-Frameworks zu erstellen, in dem die Anwendung in separate Seiten unterteilt ist: Code-Wartung: Die Aufteilung der Anwendung in mehrere Seiten kann das Verwalten und Wartungsbereich erleichtern. Modularität: Jede Seite kann als separates Modul für eine einfache Wiederverwendung und den Austausch verwendet werden. Einfaches Routing: Die Navigation zwischen Seiten kann durch einfache Routing -Konfiguration verwaltet werden. SEO -Optimierung: Jede Seite hat eine eigene URL, die SEO hilft.

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.

Sie können die Vue -Version mit Vue Devtools abfragen, um die Registerkarte VUE in der Konsole des Browsers anzuzeigen. Verwenden Sie NPM, um den Befehl "npm list -g vue" auszuführen. Suchen Sie das Vue -Element im Objekt "Abhängigkeiten" der Datei package.json. Führen Sie für Vue -CLI -Projekte den Befehl "Vue --version" aus. Überprüfen Sie die Versionsinformationen im & lt; Skript & gt; Tag in der HTML -Datei, die sich auf die VUE -Datei bezieht.

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.
