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

Docker-Zeitzonenproblem und Datenmigrationsproblem

Neueste Lösung: -v /usr/share/zoneinfo/Asia/Shang...

Das Prinzip und die Richtung von JavaScript

Wie lässt sich feststellen, worauf dies hinweist?...

Detaillierte Erklärung des Synchronisierungsmodifikators von Vue

Inhaltsverzeichnis 1. Anweisungen 2. Modifikatore...

Drei JavaScript-Methoden zur Lösung des Joseph-Ring-Problems

Inhaltsverzeichnis Überblick Problembeschreibung ...

JavaScript BOM-Standortobjekt + Navigatorobjekt + Verlaufsobjekt

Inhaltsverzeichnis 1. Standortobjekt 1. URL 2. Ei...

Detaillierte Erläuterung des Docker-Visualisierungsgrafiktools Portainer

Inhaltsverzeichnis 1. Einführung in Portainer 2. ...

Detaillierte Erklärung zur Verwendung der Funktion find_in_set() in MySQL

Betrachten wir zunächst ein Beispiel: In der Arti...

Vue implementiert das digitale Tausendertrennzeichenformat global

In diesem Artikelbeispiel wird der spezifische Co...

Detaillierte Erklärung der grundlegenden Verwendung des Linux-Debuggers GDB

Inhaltsverzeichnis 1. Übersicht 2. GDB-Debugging ...

So schreiben Sie den Stil einer CSS3-Tianzi-Rasterliste

In vielen Projekten ist es notwendig, die Funktio...

JS realisiert den Effekt der Baidu News-Navigationsleiste

In diesem Artikel wird der spezifische JS-Code zu...

Zusammenfassung der Methoden zum Schreiben von Urteilsaussagen in MySQL

So schreiben Sie Urteilsaussagen in MySQL: Method...