WeChat-Applet implementiert Anmeldeschnittstelle

WeChat-Applet implementiert Anmeldeschnittstelle

Die Anmeldeoberfläche des WeChat-Applets ist zu Ihrer Information implementiert. Der spezifische Inhalt ist wie folgt

<Klasse anzeigen="Container">
  <Klasse anzeigen="Wrapper">
    <view class="left-top-sign">ANMELDEN</view>
    <view class="willkommen">
      Willkommen zurück!
    </Ansicht>
    <Klasse anzeigen="Eingabeinhalt">
      <Ansichtsklasse="Eingabeelement">
        <text class="tit">Mobiltelefonnummer</text>
        <input type="text" placeholder="Bitte geben Sie Ihre Telefonnummer ein" id='phone' data-type='phone' bindinput='handerInput' />
      </Ansicht>
      <Ansichtsklasse="Eingabeelement">
        <text class="tit">Passwort</text>
        <input type="password" placeholder="Bitte geben Sie Ihr Passwort ein" id='password' data-type='password' bindinput='handerInput' />
      </Ansicht>
    </Ansicht>
    <button class="confirm-btn">Anmelden</button>
    <view Klasse="Abschnitt vergessen">
      Passwort vergessen?
    </Ansicht>
  </Ansicht>
  <view Klasse="Register-Abschnitt">
    Noch kein Konto?
    <text>Jetzt registrieren</text>
  </Ansicht>
</Ansicht>

Die einfachste Formularübermittlung.

Daten: {
    Telefon: '', //Telefonnummer Passwort: '' //Passwort},

  /**
   * Lebenszyklusfunktion - auf Seitenladen warten*/
  onLoad: Funktion (Optionen) {

  },
  handerInput(Ereignis) {
    //let Typ = Ereignis.currentTarget.dataset.type;
    let Typ = Ereignis.currentTarget.id;
    console.log(Ereignis);
    dies.setData({
      [Typ]: Ereignis.Detail.Wert
   })
  },
  /**

Um eine bidirektionale Bindung zu implementieren, verwenden Sie das Bindinput-Ereignis und die ID oder den Datensatz, um die Daten eindeutig zu identifizieren.

Ein Datum kann an die ID und mehrere Daten können an den Datensatz übergeben werden.

WeChat-Applet-Interaktion: Nachrichtenanzeigefeld. (Offizieller Link)

Binden Sie eine Klick-Callbackfunktion an die Anmeldeschaltfläche.

//html
<button class="confirm-btn" bindtap="login">Anmelden</button>

//js
anmelden() {
    let { Telefon, Passwort } = this.data;
    console.log(Passwort);
    /**
     * Telefonnummernüberprüfung* Telefonnummer ist leer* Telefonnummernformat ist falsch* Telefonnummer ist korrekt*/
    wenn (!Telefon) {
      wx.showToast({
        Titel: „Mobilfunknummer darf nicht leer sein“,
        Symbol: „keine“
      })
      zurückkehren;
    }
    //Definieren Sie den regulären Ausdruck für die Telefonnummer let phoneReg = /^1(3|4|5|6|7|8|9)\d{9}$/
    wenn (!phoneReg.test(Telefon)) {
      wx.showToast({
        Titel: 'Das Format der Handynummer ist falsch',
        Symbol: „keine“
      })
      zurückkehren;
    }

    if (!Passwort) {
      wx.showToast({
        Titel: 'Das Passwort darf nicht leer sein',
        Symbol: „keine“
      })
      zurückkehren;
    }

    wx.showToast({
      Titel: „Front-End-Verifizierung bestanden“

    })

Backend-Verifizierung, Aufruf der Schnittstelle und Rückgabe der Anmeldeinformationen an den Benutzer über den Antwortstatuscode.

let result = await request('/login/cellphone', { Telefon, Passwort });
    wenn (Ergebniscode === 200) {
      wx.showToast({
        Titel: „Anmeldung erfolgreich“,
      })
    }
    sonst wenn (Ergebniscode === 400) {
      wx.showToast({
        Titel: 'Falsche Telefonnummer',
        Symbol: „keine“
      })
    }
    sonst wenn (Ergebniscode === 502) {
      wx.showToast({
        Titel: 'Falsches Passwort',
        Symbol: „keine“
      })
    }
    anders {
      wx.showToast({
        Titel: 'Anmeldung fehlgeschlagen, bitte melden Sie sich erneut an',
        Symbol: „keine“
      })
    }
},

Klicken Sie im Personal Center auf den Avatar, um zur Anmeldeoberfläche zu springen. Nach erfolgreicher Anmeldung werden die persönlichen Daten des Benutzers zwischengespeichert (mit den Methoden setStorageSync und getStorageSync), dann wird mit switchTab zur Seite des Personal Centers unter der Registerkartenleiste gesprungen und die erhaltenen zwischengespeicherten Daten werden in JS-Daten gespeichert. Achten Sie auf die Konvertierung des JSON-Formats und schließlich

Besondere Beurteilung der ternären Operation in HTML.

<view class="Benutzerinfo-Box" bindtap='toLogin'>
      <Ansichtsklasse="Portrait-Box">
        <Bildklasse="Porträt"
          src='{{userInfo.avatarUrl?userInfo.avatarUrl:"/static/images/personal/missing-face.png"}}'></image>
      </Ansicht>
      <Klasse anzeigen="Info-Box">
        <text class="username">{{userInfo.nickname?userInfo.nickname: 'Besucher'}}</text>
      </Ansicht>
</Ansicht>
//login.js
wenn (Ergebniscode === 200) {
      wx.showToast({
        Titel: „Anmeldung erfolgreich“,
      })

      wx.setStorageSync('Benutzerinfo', JSON.stringify(Ergebnis.Profil));

      wx.switchTab({
        URL: '/Seiten/persönlich/persönlich'
      })
    }
// persönlich.js
onLoad: Funktion (Optionen) {

    let userInfo = wx.getStorageSync('userInfo');
    if (Benutzerinfo) {
      dies.setData({
        Benutzerinfo: JSON.parse(Benutzerinfo)
      })
    }

  }, 

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:
  • WeChat-Applet implementiert Anmeldeseite
  • JSF implementiert eine einfache Anmeldeseite für das WeChat-Applet (mit Quellcode)
  • Implementierung einer einfachen Login-Seite für das WeChat-Applet (mit Quellcode)
  • WeChat Mini-Programm-Übung: Login-Seite erstellen (5)
  • Beispiel für die lokale Speicherung und Verarbeitung der Anmeldeseite des WeChat-Applets – detaillierte Erläuterung
  • Beispiel für die Anmeldeschnittstelle eines WeChat-Applets

<<:  Detaillierte Erklärung der Verwendung von DECIMAL im MySQL-Datentyp

>>:  Installation von VMware Workstation unter Linux (Ubuntu)

Artikel empfehlen

JavaScript CSS3 zur Implementierung einer einfachen Video-Sperrfunktion

In diesem Artikel wird versucht, eine Demo zur Si...

mysql installer web community 5.7.21.0.msi grafik-tutorial zur installation

In diesem Artikelbeispiel wird der spezifische Co...

Führen Sie die Schritte aus, um schnell ein Vue3.0-Projekt zu erstellen

Inhaltsverzeichnis 1. Wir müssen sicherstellen, d...

Unterschiede zwischen proxy_pass in zwei Modulen in nginx

1. Die proxy_pass -Direktive des Moduls 1.ngx_str...

Natives JS zur Implementierung eines Hover-Dropdown-Menüs

JS implementiert ein Hover-Dropdown-Menü. Dies is...

Detaillierte Erläuterung der kombinierten MySQL-Indexmethode

Für jedes DBMS sind die Indizes der wichtigste Op...

Eine kurze Diskussion über den CSS-Kaskadierungsmechanismus

Warum hat CSS einen Kaskadierungsmechanismus? Da ...

CSS-Schreibformat, detaillierte Erklärung der Grundstruktur einer mobilen Seite

1. CSS-Schreibformat 1. Inline-Stile Sie können C...

Beispiel für die Bereitstellungsmethode „Forever+nginx“ einer Node-Site

Ich habe vor Kurzem den günstigsten Tencent-Cloud...

Lösung für den Fehler beim Importieren von MySQL Big Data in Navicat

Die von Navicat exportierten Daten können nicht i...