In diesem Artikel wird der spezifische Code der manuellen Kapselung von Popup-Box-Komponentennachrichten in Vue3 zu Ihrer Information bereitgestellt. Der spezifische Inhalt ist wie folgt Paketkomponenten<Vorlage> <Übergangsname="nach unten"> <div Klasse="xtx-message" :style="Stil[Typ]" v-show='isShow'> <!-- Der Stil ist oben gebunden --> <!-- Verschiedene Eingabeaufforderungssymbole ändern sich--> <i Klasse = "Iconfont": Klasse = "[Stil[Typ].Icon]"></i> <span class="text">{{text}}</span> </div> </Übergang> </Vorlage> <Skript> importiere { onMounted, ref } von 'vue' Standard exportieren { Name: "XtxMessage", Requisiten: { text: { Typ: Zeichenfolge, Standard: '' }, Typ: { Typ: Zeichenfolge, // warnen Warnung Fehler Fehler Erfolg Erfolg Standard: „warnen“ } }, aufstellen () { // Definieren Sie ein Objekt, das drei Stile enthält. Der Objektschlüssel ist vom Typ String const style = { warnen: Symbol: „Symbol-Warnung“, Farbe: '#E6A23C', Hintergrundfarbe: 'rgb(253, 246, 236)', Rahmenfarbe: 'rgb(250, 236, 216)' }, Fehler: { Symbol: „Symbol-Shanchu“, Farbe: '#F56C6C', Hintergrundfarbe: 'rgb(254, 240, 240)', Rahmenfarbe: 'rgb(253, 226, 226)' }, Erfolg: { Symbol: 'icon-queren2', Farbe: '#67C23A', Hintergrundfarbe: 'rgb(240, 249, 235)', Rahmenfarbe: 'rgb(225, 243, 216)' } } // Animation steuern const isShow = ref(false) // Auslösen bei Mounted(() => { isShow.value = true }) return { Stil, istAnzeigen } } } </Skript> <style scoped lang="weniger"> .runter { &-eingeben { &-aus { transformieren: übersetzen3d(0, -75px, 0); Deckkraft: 0; } &-aktiv { Übergang: alle 0,5 s; } &-Zu { transformieren: keine; Deckkraft: 1; } } } .xtx-Nachricht { Breite: 300px; Höhe: 50px; Position: fest; Z-Index: 9999; links: 50%; Rand links: -150px; oben: 25px; Zeilenhöhe: 50px; Polsterung: 0 25px; Rand: 1px durchgezogen #e4e4e4; Hintergrund: #f5f5f5; Farbe: #999; Rahmenradius: 4px; ich { Rand rechts: 4px; vertikale Ausrichtung: Mitte; } .text { vertikale Ausrichtung: Mitte; } } </Stil> Auf dem Prototypobjekt von Vue montiert // Die folgende Methode muss einen Eingabeaufforderungseffekt rendern: import { createVNode, render } from 'vue' XtxMessage aus „./xtx-message.vue“ importieren //DOM-Container dynamisch erstellen const div = document.createElement('div') div.setAttribute('Klasse', 'xtx-Nachrichtencontainer') Dokument.Body.AnhängenKind(div) export default ({ Text, Typ }) => { let timer = null // createVNode wird verwendet, um einen virtuellen Knoten zu erstellen // Parameter 1 unterstützt die Komponente // Parameter 2 stellt die an die Komponente übergebenen Optionen dar const vnode = createVNode(XtxMessage, { text, type }) // Rendere den virtuellen Knoten in das DOM der Seite // Parameter der Renderfunktion // Parameter 1: gibt den zu rendernden Inhalt an (virtueller Knoten) // Parameter 2: gibt den Zielort des Renderings an (DOM-Element) rendern(vnode, div) // Hoffe, dass die Eingabeaufforderung nach 1 Sekunde verschwindet clearTimeout(timer) Timer = setzeTimeout(() => { // Lösche den Inhalt von div render(null, div) }, 1000) } // $message({ text: 'Anmeldung fehlgeschlagen', type: 'error'}) Nachricht aus './Message' importieren Standard exportieren { installieren(App) { // Wenn Sie globale Eigenschaften bereitstellen möchten, können Sie die Eigenschaft this.$message über die Komponenteninstanz aufrufen. app.config.globalProperties.$message = Nachricht // Prototypfunktion} } verwendeneins. Nachricht aus '@/components/library/Message' importieren aufstellen () { // Anmeldung auslösen const handleLogin = async () => { // Manuelle Formularvalidierung const flag = await target.value.validate() wenn (Flagge) { // Überprüfung erfolgreich, rufe die Schnittstelle zum Anmelden auf // Wenn die Anmeldung fehlschlägt, melde dich mit der Meldung „Message({ type: 'error', text: 'Login failed' })“ an. } } montiert () { this.$message({ Typ: 'Fehler', Text: 'Anmeldung fehlgeschlagen' }) } } zwei. // Holen Sie sich das Instanzobjekt der Komponente: ähnlich wie beim vorherigen this const Instanz = getCurrentInstance() // Klicken Sie hier, um sich anzumelden const handleLogin = async () => { const valid = warte auf Ziel.Wert.Validieren() if (gültig) { // Formularüberprüfung erfolgreich abgeschlossen. Rufen Sie die Schnittstelle zum Anmelden auf. // Message({ text: 'Anmeldung fehlgeschlagen', type: 'error' }) instance.proxy.$message({ text: 'Anmeldung fehlgeschlagen', type: 'error' }) } } 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:
|
>>: Der Excel-Export schlägt in der Docker-Umgebung immer fehl
In diesem Artikel wird der spezifische Code von j...
In diesem Artikelbeispiel wird der spezifische Co...
Die Front- und Back-End-Ports von Vue sind inkons...
0. Warum brauchen wir Remote-Entwicklung? Bei der...
Inhaltsverzeichnis Überblick 1. Verstehen Sie die...
In vielen Fällen platzieren große und mittelgroße...
Anaconda ist die beliebteste Python-Plattform für...
Vor Kurzem habe ich das Problem gelöst, dass Dock...
In diesem Artikel werden hauptsächlich die Stilat...
Inhaltsverzeichnis Vorwort 1. DDL 1.1 Datenbankop...
Inhaltsverzeichnis 1. Lassen Sie uns zunächst erk...
Alle Tags müssen klein geschrieben sein In XHTML m...
Inhaltsverzeichnis Methode 1 Methode 2 Nach der I...
So installieren Sie Flash unter Linux 1. Besuchen...
Inhaltsverzeichnis 1. Übersicht 1.1 Definition 1....