Detaillierte Erklärung der Vue-Anmeldung und -Abmeldung

Detaillierte Erklärung der Vue-Anmeldung und -Abmeldung

Schauen wir uns zunächst unseren Effektimplementierungsprozess an.

Melden Sie sich zunächst an, um einen Überblick über die Geschäftsprozesse und die damit verbundenen technischen Punkte zu erhalten

  • Layout der Datensatzseite
  • Erstellen Sie zwei Vue.js-Dateien
  • Lassen Sie uns eine Anmeldeseite und eine Registrierungsseite erstellen
  • Layout der Anmeldeseite
  • Konfigurieren von Routen
  • Datenbindung für Login-Formular
  • Validierungsregeln für das Login-Formular
  • Zurücksetzen des Anmeldeformulars
  • Login-Vorauthentifizierung
  • Popup-Eingabeaufforderung zur Konfiguration der Anmeldekomponente
  • Verhalten nach erfolgreichem Login
  • Speichern des Tokens nach dem Login im SessionStorage des Clients
  • Springen Sie über die programmgesteuerte Navigation zur Backend-Homepage. Die Routing-Adresse ist der Standardpfad „/“.
  • Beim Abmelden von unserer Homepage werden wir im Popup-Fenster zur Komponentenkonfiguration aufgefordert, unser Token mit removeItem zu löschen.

Login-Geschäftsprozess

1. Geben Sie Ihren Benutzernamen und Ihr Passwort auf der Anmeldeseite ein

2. Rufen Sie zur Überprüfung die Backend-Schnittstelle auf

3. Springen Sie nach der Überprüfung entsprechend dem Antwortstatus des Hintergrunds zur Projekthomepage

Implementierung der Login-Funktion

1. Zunächst überprüfen wir mit dem Routing Guard die Anmeldung und stellen fest, ob eine Anmeldung erforderlich ist

{
    Pfad: '/login',
    Name:"Anmelden",
    Komponente:Anmelden,
    Meta:{
      Anmeldung:wahr
    }
} 
  //Definieren Sie „meta-true“, wo eine Anmeldung erforderlich ist, um zu sehen, ob sie erforderlich ist. if(to.matched.some(item=>item.meta.login)){//Anmeldung erforderlich console.log("Anmeldung erforderlich");
    if(isLogin){//1. Bereits angemeldet, direkt übergeben if(data.error===400){//Das Backend teilt Ihnen mit, dass die Anmeldung fehlgeschlagen ist next({name:'login'})
            localStorage.removeItem('Token');
            zurückkehren;
        }
        wenn(zu.name==='login'){
            weiter({name:'Home'})
        }anders{
            nächste()
        }
        zurückkehren;
    }
    if(!isLogin && to.name==='login'){//2. Nicht angemeldet, gehe aber zur Anmeldeseite next()
    }
    if(!isLogin && to.name !=='login'){//3. Nicht angemeldet, nicht die Anmeldeseite next({name:"login"})
    }
   }else{//Keine Anmeldung nötig, gehe direkt zu next()
   }

2. Für die Formularvalidierungsregeln verwenden wir die Element-Komponentenbibliothek

Verwenden Sie Element, um unser Stillayout in die Vorlage zu schreiben

 <div Klasse="Anmeldeabschnitt">
    <!-- :rules="Regeln" -->
    <el-form
      Beschriftungsposition = "oben"
      Beschriftungsbreite = "100px" Klasse = "Demo-Regelform"
      :Regeln="Regeln"
      :Modell="RegelnVon"
      Statussymbol
      ref="RegelVon"
    >
      <el-form-item label="Benutzername" prop="Name">
        <!-- Verwenden Sie v-model, um den vom Benutzer eingegebenen Namen abzurufen -->
        <el-input Typ="Text" v-Modell="Regeln von.name"></el-input>
      </el-form-item>
      <el-form-item label="Passwort" prop="Passwort"></el-form-item>
        <!-- Verwenden Sie v-model, um das vom Benutzer eingegebene Passwort abzurufen -->
        <el-input Typ="Passwort" v-model="rulesFrom.password"></el-input>
      </el-form-item>
      <el-form-item>
        <!-- Submit-Ereignis definieren -->
        <el-button type="primary" @click="submitFrom('ruleFrom')">Senden</el-button>
        <el-button>Zurücksetzen</el-button>
      </el-form-item>
    </el-form>
  </div>

Definieren Sie Validierungsregeln für das Formular

Weitere Einzelheiten finden Sie auf der offiziellen Website von Element (Formular).

In Daten definieren

Regeln von: {
        Name:'',
        Passwort:''
      },
      Regeln:
        Name:[
          // Validierungsregeln {erforderlich: wahr, Nachricht: 'Bitte geben Sie Ihren Benutzernamen ein', Trigger: 'Blur'},
          {min:1,max:5,message:'Länge liegt zwischen 1 und 5 Zeichen',trigger:'blur'}
        ],
        Passwort:[
          {erforderlich: wahr, Nachricht: 'Bitte geben Sie Ihr Passwort ein', Auslöser: 'unscharf'},
          {min:1,max:5,message:'Länge liegt zwischen 1 und 5 Zeichen',trigger:'blur'}
        ]
      }

Definieren Sie das Submit-Ereignis in Methoden

 // Wenn wir auf „Senden“ klicken, kann die Methode ausgelöst werden, um alles im Formular abzurufen: „submitFrom(formName){
      dies.$refs[formName].validate( (gültig)=>{
        wenn(gültig){
          // Wenn die Überprüfung erfolgreich war, werden die Benutzerinformationen und das Passwort an den Backend-Login zurückgegeben ({
            Name:diese.RegelnVon.Name,
            Passwort:this.rulesFrom.password,
          }).dann((Daten)=>{
            konsole.log(Daten);
            wenn(Datencode===0){
              localStorage.setItem('Token',Daten.Daten.Token)
              Fenster.Standort.href='/';
            }
            wenn(Datencode===1){
              dies.$Nachricht.Fehler(Daten.Nachricht)
            }
          })
        }anders{
          console.log('Fehler beim Senden!!');
          return false
        }
      })
    }

Schreiben Sie zu diesem Zeitpunkt das Logout und konvertieren Sie es vor jedem

const token = localStorage.getItem('token');
// ! ! Token wird in Booleschen Typ konvertiert const isLogin=!!token;
// Beim Eingeben der Route müssen Sie das Token an das Backend zurückgeben, um zu überprüfen, ob es zulässig ist. const data = await userInfo();
    Store.commit('chageUserInfo',Daten.Daten)

Zusammenfassen

Dieser Artikel endet hier. Ich hoffe, er kann Ihnen helfen. Ich hoffe auch, dass Sie mehr Inhalten auf 123WORDPRESS.COM mehr Aufmerksamkeit schenken können!

Das könnte Sie auch interessieren:
  • Beispiel für die Implementierung von Login und Logout in Vue
  • Implementierung der Anmeldeseite des tatsächlichen Kampfprotokolls von Vue
  • Implementierung der Login-Seite basierend auf vue-cli3 und element
  • Beispiel für die Implementierung der Sitzungs- und Token-Anmeldestatusüberprüfung mit vue+koa2

<<:  Welchen MySQL-Eindeutigen Index oder Normalen Index soll ich wählen?

>>:  So installieren Sie die neueste Version von Docker mit dem Befehl „Deepin apt“

Artikel empfehlen

Detaillierte Erläuterung der Angular-Routing-Grundlagen

Inhaltsverzeichnis 1. Routing-bezogene Objekte 2....

Webdesign: Wenn der Titel nicht vollständig angezeigt werden kann

<br />Ich habe mir heute die neu gestaltete ...

MySQL-FAQ-Serie: Wann werden temporäre Tabellen verwendet?

Einführung in temporäre Tabellen Was ist eine tem...

Erfahren Sie in fünf Minuten mehr über React Routing

Inhaltsverzeichnis Was ist Routing Grundlegende V...

So stellen Sie Oracle mit Docker auf dem Mac bereit

So stellen Sie Oracle mit Docker auf dem Mac bere...

Detaillierte Erläuterung der MySQL-Transaktionsverarbeitung

1. MySQL-Transaktionskonzept MySQL-Transaktionen ...

Zabbix3.4-Methode zum Überwachen des MongoDB-Datenbankstatus

Mongodb verfügt über einen Befehl db.serverStatus...

Detaillierte Erklärung des Flex-Layouts in CSS

Flex-Layout wird auch elastisches Layout genannt....

Detaillierte Beschreibung der Unicode-Signatur-BOM

Unicode-Signatur-BOM – Was ist die BOM? BOM ist di...

XHTML-Tutorial: XHTML-Grundlagen für Anfänger

<br />Der Inhalt dieser Site ist Original. B...