


VUE3-Erste-Schritte-Beispiel: Erstellen Sie eine einfache Instant-Messaging-Anwendung
Vue3 ist eines der fortschrittlichsten derzeit verfügbaren JavaScript-Frameworks und die nächste Generation von Vue.js. Vue3 bietet nicht nur eine bessere Leistung und umfangreichere Funktionen, sondern auch ein besseres Entwicklungserlebnis. In diesem Artikel stellen wir vor, wie Sie mit Vue3 eine einfache Instant-Messaging-Anwendung erstellen.
- Bestimmen Sie die Anwendungsstruktur
Bevor wir mit der Erstellung der Anwendung beginnen, müssen wir die Struktur der Anwendung festlegen. In unserer Beispielanwendung erstellen wir die folgenden Komponenten:
- App.vue: Die Hauptkomponente der Anwendung, verantwortlich für die Anzeige aller anderen Komponenten.
- ChatList.vue: Zeigt die Chat-Liste des Benutzers an.
- ChatMessage.vue: Zeigt eine einzelne Chat-Nachricht an.
- ChatInput.vue: Bietet Eingabekomponenten für Benutzer zur Interaktion mit Nachrichten.
- Erstellen der App
Bevor Sie mit der Erstellung Ihrer App beginnen, stellen Sie sicher, dass auf Ihrem Computer die neuesten Versionen von Node.js und Vue CLI installiert sind.
Um eine Anwendung zu erstellen, verwenden Sie die Vue-CLI und führen Sie den folgenden Befehl aus:
vue create chat-app
Dadurch wird eine neue Vue3-Anwendung erstellt. Anschließend müssen Sie den Anweisungen auf dem Bildschirm folgen und die folgenden Optionen auswählen:
- Wählen Sie die manuelle Installationsfunktion aus.
- Wählen Sie Babel und Router.
- Wählen Sie „ESLint+Prettier“ mit dem „Leerzeichen“ nach der Installationsfrage.
- Wählen Sie „Lint and fix on commit“
- Komponenten erstellen
Als nächstes müssen wir die Komponenten unserer Anwendung erstellen. Sie können die folgenden Dateien im Verzeichnis /src/components/ erstellen:
- App.vue
<template> <div class="chat-app"> <ChatList /> <ChatInput /> </div> </template> <script> import ChatList from "./ChatList"; import ChatInput from "./ChatInput"; export default { name: "App", components: { ChatList, ChatInput, }, }; </script> <style> .chat-app { display: flex; flex-direction: column; height: 100vh; justify-content: space-between; } </style>
- ChatList.vue
<template> <div class="chat-list"> <ChatMessage v-for="message in messages" :key="message.id" :message="message" /> </div> </template> <script> import ChatMessage from "./ChatMessage"; export default { name: "ChatList", components: { ChatMessage, }, data() { return { messages: [ { id: 1, text: "Hello", author: "Alice" }, { id: 2, text: "Hi there", author: "Bob" }, ], }; }, }; </script> <style> .chat-list { height: calc(100% - 64px); overflow-y: scroll; padding: 16px; display: flex; flex-direction: column; justify-content: flex-end; } </style>
- ChatMessage.vue
<template> <div class="chat-message"> <div class="chat-message-author">{{ message.author }}</div> <div class="chat-message-text">{{ message.text }}</div> </div> </template> <script> export default { name: "ChatMessage", props: { message: { type: Object, required: true, }, }, }; </script> <style> .chat-message { margin-bottom: 8px; } .chat-message-author { font-weight: bold; margin-bottom: 4px; } .chat-message-text { font-size: 16px; } </style>
- ChatInput.vue
<template> <div class="chat-input"> <input type="text" v-model="message" @keyup.enter="sendMessage" /> <button @click="sendMessage">Send</button> </div> </template> <script> export default { name: "ChatInput", data() { return { message: "", }; }, methods: { sendMessage() { this.$emit("send", this.message); this.message = ""; }, }, }; </script> <style> .chat-input { display: flex; height: 64px; padding: 16px; } .chat-input input { flex: 1; border-radius: 4px 0 0 4px; border: none; padding: 8px; font-size: 16px; } .chat-input button { border-radius: 0 4px 4px 0; border: none; background-color: #007aff; color: white; font-size: 16px; padding: 8px 16px; cursor: pointer; } </style>
- beim Bearbeitungsstatus in der übergeordneten Komponente
In unserer Anwendung müssen wir Daten über mehrere Komponenten hinweg teilen. So können wir den Status in der übergeordneten Komponente festlegen und an alle untergeordneten Komponenten weitergeben. In App.vue werden wir den folgenden Code hinzufügen:
<script> import ChatList from "./ChatList"; import ChatInput from "./ChatInput"; export default { name: "App", components: { ChatList, ChatInput, }, data() { return { messages: [ { id: 1, text: "Hello", author: "Alice" }, { id: 2, text: "Hi there", author: "Bob" }, ], }; }, methods: { sendMessage(message) { const newMessage = { id: this.messages.length + 1, text: message, author: "You", }; this.messages.push(newMessage); }, }, }; </script>
Dieser Code initialisiert das Nachrichten-Array und fügt die sendMessage-Methode hinzu, die jede Nachricht empfängt und sie dem Nachrichten-Array hinzufügt.
- Ereignisse in untergeordneten Komponenten verarbeiten
Jetzt müssen wir das sendMessage-Ereignis in untergeordneten Komponenten verarbeiten und an die übergeordnete Komponente senden. In ChatInput.vue fügen wir den folgenden Code hinzu:
<script> export default { name: "ChatInput", data() { return { message: "", }; }, methods: { sendMessage() { this.$emit("send", this.message); this.message = ""; }, }, }; </script>
Dieser Code löst das Sendeereignis aus, wenn der Benutzer eine Nachricht sendet, und sendet den Nachrichtentext als Parameter an die übergeordnete Komponente zurück.
- Daten in der untergeordneten Komponente anzeigen
Schließlich müssen wir Daten in der untergeordneten Komponente anzeigen. In ChatMessage.vue und ChatList.vue verwenden wir den folgenden Code:
<ChatMessage v-for="message in messages" :key="message.id" :message="message" />
Dieser Code zeigt die ChatMessage-Komponente basierend auf dem Inhalt im Nachrichtenarray an.
- Führen Sie die App aus
Jetzt ist unsere App fertig. Um die Anwendung auszuführen, führen Sie den folgenden Befehl aus:
npm run serve
Dadurch wird die Anwendung auf Ihrem lokalen Entwicklungsserver gestartet, der unter http://localhost:8080/ zugänglich ist.
Zusammenfassung
In diesem Artikel wird erläutert, wie Sie mit Vue3 eine einfache Instant-Messaging-Anwendung erstellen. Wir haben gelernt, wie man mit der Vue-CLI Anwendungen und Komponenten erstellt und wie man den Status in übergeordneten Komponenten festlegt, Ereignisse verarbeitet und Daten in untergeordneten Komponenten anzeigt. In diesem Artikel erfahren Sie, wie Sie mit Vue3 moderne, interaktive Webanwendungen entwickeln und eine solide Grundlage für Ihr nächstes Projekt legen.
Das obige ist der detaillierte Inhalt vonVUE3-Erste-Schritte-Beispiel: Erstellen Sie eine einfache Instant-Messaging-Anwendung. 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

Durch die Verwendung von ECharts in Vue können Sie Ihrer Anwendung ganz einfach Datenvisualisierungsfunktionen hinzufügen. Zu den spezifischen Schritten gehören: Installieren von ECharts- und Vue ECharts-Paketen, Einführung von ECharts, Erstellen von Diagrammkomponenten, Konfigurieren von Optionen, Verwenden von Diagrammkomponenten, Anpassen von Diagrammen an Vue-Daten, Hinzufügen interaktiver Funktionen und Verwenden erweiterter Verwendungsmöglichkeiten.

Frage: Welche Rolle spielt der Exportstandard in Vue? Detaillierte Beschreibung: Exportstandard definiert den Standardexport der Komponente. Beim Importieren werden Komponenten automatisch importiert. Vereinfachen Sie den Importvorgang, verbessern Sie die Übersichtlichkeit und vermeiden Sie Konflikte. Wird häufig zum Exportieren einzelner Komponenten verwendet, wobei sowohl benannte als auch Standardexporte verwendet werden und globale Komponenten registriert werden.

Die Kartenfunktion von Vue.js ist eine integrierte Funktion höherer Ordnung, die ein neues Array erstellt, wobei jedes Element das transformierte Ergebnis jedes Elements im ursprünglichen Array ist. Die Syntax lautet map(callbackFn), wobei callbackFn jedes Element im Array als erstes Argument empfängt, optional den Index als zweites Argument, und einen Wert zurückgibt. Die Kartenfunktion ändert das ursprüngliche Array nicht.

In Vue.js ist event ein natives JavaScript-Ereignis, das vom Browser ausgelöst wird, während $event ein Vue-spezifisches abstraktes Ereignisobjekt ist, das in Vue-Komponenten verwendet wird. Im Allgemeinen ist die Verwendung von $event bequemer, da es so formatiert und erweitert ist, dass es die Datenbindung unterstützt. Verwenden Sie „event“, wenn Sie auf bestimmte Funktionen des nativen Ereignisobjekts zugreifen müssen.

onMounted ist ein Lebenszyklus-Hook für die Komponentenmontage in Vue. Seine Funktion besteht darin, Initialisierungsvorgänge durchzuführen, nachdem die Komponente im DOM bereitgestellt wurde, z. B. das Abrufen von Referenzen auf DOM-Elemente, das Festlegen von Daten, das Senden von HTTP-Anforderungen, das Registrieren von Ereignis-Listenern usw. Es wird nur einmal aufgerufen, wenn die Komponente gemountet wird. Wenn Sie Vorgänge ausführen müssen, nachdem die Komponente aktualisiert wurde oder bevor sie zerstört wurde, können Sie andere Lebenszyklus-Hooks verwenden.

Es gibt zwei Möglichkeiten, Module in Vue.js zu exportieren: Export und Export Default. export wird zum Exportieren benannter Entitäten verwendet und erfordert die Verwendung von geschweiften Klammern; export default wird zum Exportieren von Standardentitäten verwendet und erfordert keine geschweiften Klammern. Beim Importieren müssen per Export exportierte Entitäten ihre Namen verwenden, während per Exportstandard exportierte Entitäten implizit verwendet werden können. Es wird empfohlen, die Export-Standardeinstellung für Module zu verwenden, die mehrmals importiert werden müssen, und die Export-Standardeinstellung für Module, die nur einmal exportiert werden müssen.

Vue-Hooks sind Rückruffunktionen, die Aktionen bei bestimmten Ereignissen oder Lebenszyklusphasen ausführen. Dazu gehören Lebenszyklus-Hooks (wie beforeCreate, mount, beforeDestroy), Event-Handling-Hooks (wie click, input, keydown) und benutzerdefinierte Hooks. Hooks verbessern die Komponentenkontrolle, reagieren auf Komponentenlebenszyklen, verarbeiten Benutzerinteraktionen und verbessern die Wiederverwendbarkeit von Komponenten. Um Hooks zu verwenden, definieren Sie einfach die Hook-Funktion, führen Sie die Logik aus und geben Sie einen optionalen Wert zurück.

Vue.js-Ereignismodifikatoren werden verwendet, um bestimmte Verhaltensweisen hinzuzufügen, darunter: Verhindern von Standardverhalten (.prevent), Stoppen von Ereignisblasen (.stop), Einmaliges Ereignis (.once), Erfassen von Ereignissen (.capture), Passives Abhören von Ereignissen (.passive), Adaptiv Modifikator (.self)Schlüsselmodifikator (.key)
