Vue implementiert Beispielcode für benutzerdefinierte „modales Popup-Fenster“-Komponente

Vue implementiert Beispielcode für benutzerdefinierte „modales Popup-Fenster“-Komponente

Vorwort

Das Dialogfeld ist eine sehr häufige Komponente und wird an vielen Stellen verwendet. Normalerweise können wir die integrierte Warnung verwenden, um das Dialogfeld anzuzeigen. Was aber, wenn es sich um ein entworfenes Diagramm handelt? Wir müssen also selbst ein Dialogfeld schreiben. Schauen wir uns den detaillierten Implementierungsprozess an.

Rendern

Im obigen Screenshot zeigt der rote Rand an, dass der „Text, das Symbol oder das Bild“ der editierbare Teil ist.

Beispielcode

1. Erstellen Sie eine Popup-Komponente quitDialog.vue-Komponente

<Vorlage>
  <Übergangsgruppenname='verblassen'>
    <!-- Popup-Fenster verlassen-->
    <div Klasse="Dialog beenden"
         Schlüssel="1"
         @click="istBeenden = false"
         v-if="istBeenden"
         @touchmove.prevent>
    </div>
    <div Klasse="Beenden-Box"
         v-show="istBeenden"
         Schlüssel="2">
      <img :src="Bild-URL"
           :alt="imgLoadTip">
           <div class="quit_title">{{title}}</div>
      <p>{{Inhalt}}</p>
      <button class="quit_btn" @click="leftClick">{{btnText}}</button>
      <button class="quit_close" @click="rightClick">{{rightText}}</button>
    </div>
  </Übergangsgruppe>
</Vorlage>
<Skript>
Standard exportieren {
  Name: 'Popup',
  Daten () {
    zurückkehren {
      isQuit: falsch,
      imgUrl: '',
      Titel: '',
      Inhalt: '',
      btnText: '',
      rechterText: ''
    }
  },
  Methoden: {
    leftClick () {
      dies.leftBtn()
      this.isQuit = false
    },
    Rechtsklick () {
      dies.rightBtn()
      this.isQuit = false
    }
  }
}
</Skript>
<style lang="scss" scoped>
// Popup-Fenster verlassen.fade-enter,
.fade-leave-active {
  Deckkraft: 0;
}
.fade-enter-active,
.fade-leave-active {
  Übergang: Deckkraft 0,35 s;
}
// Globales Popup-Fenster.quit_dialog {
  Hintergrund: rgba(0,0,0,.5);
  Position: fest;
  oben: 0;
  links: 0;
  Höhe: 100%;
  Breite: 100 %;
  Z-Index: 10000;
}
 
.quit_box {
  Breite: 700px;
  Hintergrund: #fff;
  Position: fest;
  oben: 50 %;
  links: 50%;
  Rand links: -350px;
  Rand oben: -190px;
  Z-Index: 10001;
  Rahmenradius: 10px;
  Textausrichtung: zentriert;
  Polsterung: 50px;
  img{
    Breite: 80px;
  }
 .quit_title{
      Farbe: #666;
      Schriftgröße: 28px;
      Rand: 45px 0px;
  }
  Taste {
    Rahmenradius: 32px;
    Polsterung: 20px 0px;
    Schriftgröße: 26px;
    Rahmenradius: 8px;
    Breite: 214px;
  }
  .quit_btn{
    Farbe: #03BA82;
    Hintergrund: #fff;
    Rand: 1px durchgezogen #03BA82;
    Rand rechts: 32px;
  }
  .beenden_schließen {
    Hintergrund: linearer Farbverlauf (0 Grad, #03BA82, #01D695);
    Kastenschatten: 0px 3px 4px 0px rgba (1, 84, 58, 0,27);
    Rand: 1px durchgezogen #03BA82;
    Farbe: #fff;
  }
}
</Stil>

2. Erstellen Sie grabDialog.js

Vue von „vue“ importieren
Grasp importieren aus '../components/QuitDialog/QuitDialog'
 
const PopupBox = Vue.extend(Grasp).
 
Grasp.install = Funktion (Daten) {
  let Instanz = neue PopupBox({
    Daten
  }).$mount()
 
  Dokument.Body.AppendChild(Instanz.$el)
 
  Vue.nextTick(() => {
    Instanz.isQuit = true
    //isQuit entspricht isQuit in der Popup-Komponente und wird zur Steuerung der Sichtbarkeit verwendet})
}
 
Standard-Grasp exportieren

3. Importieren Sie in die globale main.js

Vue von „vue“ importieren
Popup aus „./api/quitDialog“ importieren
Vue.prototype.$popup = Popup.install

4. Um die Seite aufzurufen, rufen Sie einfach die Funktion auf

Methoden: {
    grabBtn () {
      dies.$grasp({
        imgUrl: require('../../assets/home/quits.png'), // Oberes Bild.
        imgLoadTip: „Bild wird geladen …“,
        Inhalt: 'Warme Tipps',
        Titel: 'Hinweis: Diese Lernaufgabe ist nicht abgeschlossen. Bestätigen Sie den Abschluss',
        btnText: 'Grausamer Abgang',
        rightText: 'Weiter studieren',
        // Linksklick-Ereignis leftBtn: () => {
          dies.$store.dispatch('user/logout').then(() => {
            dies.$signalr.LogoutPad()
            this.$signalr.SendMsg(2, 0, 'System verlassen')
            dies.$router.push('/login')
          })
        },
        // Rechtsklick-Ereignis rightBtn: () => {}
      })
    }
}

Zusammenfassen

Dies ist das Ende dieses Artikels über die Implementierung benutzerdefinierter „modaler Popup-Fenster“-Komponenten in Vue. Weitere relevante Inhalte zu benutzerdefinierten „modalen Popup-Fenster“-Komponenten in Vue finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Benutzerdefinierter globaler Popup-Komponentenbetrieb von Vue

<<:  CSS3-Zeitleistenanimation

>>:  Sieben Lösungen für klassische verteilte Transaktionen zwischen MySQL und Golan

Artikel empfehlen

jQuery-Plugin zur Implementierung des Suchverlaufs

Jeden Tag ein jQuery-Plugin – um einen Suchverlau...

5 Möglichkeiten zum Löschen oder Entfernen großer Dateiinhalte in Linux

Beim Arbeiten mit Dateien im Linux-Terminal möcht...

Windows Server 2008-Tutorial zur Überwachung der Serverleistung

Als Nächstes erfahren Sie, wie Sie die Serverleis...

Detailliertes Tutorial zum Löschen von Linux-Benutzern mit dem Befehl userdel

Was ist Serdel userdel ist ein Low-Level-Tool zum...

Entdecken Sie, wie Ihnen eine LED den Einstieg in den Linux-Kernel erleichtert

Inhaltsverzeichnis Vorwort LED-Trigger Entdecken ...

CSS verwendet das Autoflow-Attribut, um einen Sitzauswahleffekt zu erzielen

1. Autoflow-Attribut: Wenn die Länge und Breite d...

Lösen Sie das Problem des unzureichenden Docker-Festplattenspeichers

Nachdem der Server, auf dem sich Docker befindet,...

Echarts-Tutorial zur Implementierung von Baumdiagrammen

Treemaps dienen vor allem der Visualisierung baum...