Stellen wir nun sicher, dass wir uns auch anmelden können, und zwar im Ersteller der Authentifizierungsaktion. Im Ordner für
Speicheraktionen in der Authentifizierungsdatei können wir den Ersteller der Anmeldeaktion
duplizieren, kopieren und diese Kopie umbenennen, um sich anzumelden. Dies ist ebenfalls erforderlich eine E-Mail
und ein Passwort, aber die Anfrage wird an eine etwas andere URL gesendet.
Wenn Sie sich die offiziellen Dokumente zur Anmeldung ansehen,
ist dies Ihre URL. Jetzt mag es fast gleich aussehen,
aber hier ist der Unterschied dieses Wort: Melden Sie sich mit einem Passwort an, anstatt sich nach dem Doppelpunkt des Kontos anzumelden.
Dies ist das, was wir ändern müssen, um wieder eine gültige
URL zu haben. Daher können Sie natürlich auch darüber nachdenken, wie Sie diese in eine Funktion zusammenführen und Code wiederverwenden
können. Ich werde sie hier explizit aufteilen lassen, um wirklich klar zu machen, dass wir haben hier zwei separate
Funktionen und jetzt senden wir eine Anfrage an diese URL. Wir müssen weiterhin E-Mail, Passwort und dieses sichere
Token-Feld für die Rückgabe anhängen, was immer wahr sein sollte, und wir erhalten fast
die gleichen Daten wie bei der Anmeldung zurück, nur ein zusätzliches Feld, das uns im
Grunde sagt, ob diese E-Mail Teil ist eines bestehenden Kontos. Abgesehen davon senden wir hier die gleichen Daten, wir können sie so
lassen, wie
sie sind. Wir möchten diese Überprüfung hier durchführen und daher kann ich hier auch meine Antwortdaten protokollieren.
Natürlich möchte ich hier keine Anmeldeaktion versenden, sondern stattdessen eine neue Anmeldeaktion versenden. Obwohl wir dort vorerst auch nichts tun, werden
wir dies bald
tun. Ich kann bereits ändern, was
wir versandt haben . Lassen Sie uns sehen, ob
das funktioniert,
aber dafür sind natürlich einige Änderungen auf dem Authentifizierungsbildschirm erforderlich, da wir uns immer dort, wenn wir
diesen Knopf drücken, immer sofort anmelden und das ist nicht das, was ich will Wenn ich mich immer anmelde, möchte
ich mich entweder anmelden oder anmelden, je nachdem, in welchem Modus wir uns befinden. Dieser Modus sollte mithilfe dieser Schaltfläche geändert
werden können, mit der wir zwischen den Modi wechseln können.
Um zwischen den Modi wechseln zu können, müssen wir einen zusätzlichen Status im Authentifizierungsbildschirm verwalten, der
es uns ermöglicht, herauszufinden, ob wir uns im Anmeldemodus oder im Anmeldemodus befinden.
Hier verwende ich also meinen Status und beginne mit false, da dies bedeuten sollte, dass Anmelden und Festlegen Anmelden ist. Dies sagt uns daher, ob wir uns derzeit
im Anmeldemodus befinden oder ob dies falsch ist, wenn wir uns grundsätzlich im Anmeldemodus befinden weil
dies
die beiden Modi sind, die wir haben, richtig?
Die Anmeldung ist also anfangs falsch, da ich mich zunächst im Anmeldemodus befinden möchte. Jetzt können
wir mithilfe der Anmeldung bestimmen, was passiert, wenn wir die Anmeldeschaltfläche drücken, aber auch, welchen
Text wir dort ausgeben. Beginnen wir also mit
dem Text. Hier möchte ich nicht immer "Anmelden"
sagen, sondern überprüfen, ob die Anmeldung wahr ist. Dann möchte ich
"Anmelden" sagen und nur "Anmelden" sagen, wenn dies nicht der Fall ist und hier möchte ich natürlich nicht immer
sagen, dass ich mich anmelden soll. Was ich hier sage, hängt
von dem Modus ab, in dem wir uns befinden.
Also hier werde ich jetzt Back Ticks mit Switch to verwenden, damit ich hier einen dynamischen Wert einfügen kann, der jetzt von der Anmeldung abhängt,
und dann ist der dynamische Wert entweder eine Zeichenfolge, in der ich Login sage, denn wenn die Anmeldung
wahr ist, Wir wechseln in den Anmeldemodus oder wenn die Anmeldung falsch
ist, wechseln wir in den Anmeldemodus, weil wir uns im Anmeldemodus befinden, sodass sich der Text ändert.
Hier in dieser Funktion möchte ich set is sign up aufrufen und im Grunde invertieren. Dazu können wir diese Funktionsform
verwenden, um dies zu aktualisieren, wo wir hier unseren vorherigen Status erhalten, also wo ich hier und hier eine
Funktion an die Setterfunktion übergebe Ich gebe zurück, was der vorherige Zustand nicht ist.
Der vorherige Status ist natürlich ein Boolescher Status, da wir mit "Anmelden" einen Booleschen Status
verwalten, der anfangs falsch
ist. Jetzt erhalte ich hier den aktuellen Status und setze das Gegenteil als neuen Status.
Wenn dies derzeit wahr ist, setze ich es auf falsch, wenn es falsch war, setze ich es
auf wahr, das passiert hier.
Jetzt müssen wir nur noch sicherstellen, dass hier verschiedene Dinge passieren, und dafür werde ich
dies vom Anmelde-Handler in Auth-Handler umbenennen, um eine allgemeinere Benennung zu erhalten, und natürlich meinen Auth-Handler dort unten und jetzt in diesem Auth-Handler
binden Funktion können wir überprüfen, in welchem Modus wir sind.
Hier kann ich also überprüfen, ob die Anmeldung wahr ist, und wenn dies
der Fall ist, möchte ich diese Aktion natürlich auslösen, also ist das in Ordnung. Andernfalls, wenn dies nicht der Fall ist,
möchte ich die andere Aktion auslösen. Daher können wir
dies sogar ein wenig ändern,
dort nach unten senden und unsere Aktion hier
oben definieren. Jetzt ist meine Aktion zunächst undefiniert, und dann setze ich die Aktion entweder auf diese oder auf diese Aktion
gleich Auth Aktionen Anmelden mit Formularstatus Eingabewerte E-Mail und Formularstatus Eingabewerte Passwort, so und jetzt Aktion ist eine Variable, die ich übergeben kann, um dort
unten zu versenden.
Ich versende diese Aktion immer, aber diese Aktion ist entweder das Ergebnis der Anmeldung von Authentifizierungsaktionen oder der Anmeldung von Authentifizierungsaktionen, je
nachdem, ob wir uns im Anmeldemodus oder im Anmeldemodus befinden. Damit sind wir sehr flexibel und wenn wir dies
speichern, wenn ich hier wechsle, sehen Sie die Textaktualisierungen auch hier auf Android und daher jetzt, wenn ich in den Anmeldemodus
wechsle. Wenn dies bedeutet, dass ich mich anmelde und versuche, mich anzumelden Stellen Sie hier sicher, dass Sie dieselben Anmeldeinformationen
eingeben, die Sie zuvor für die Erstellung verwendet haben, und ich drücke auf Anmelden. Dies
sieht ziemlich
gut aus. Ich erhalte hier meine Konsolenausgabe mit den
Daten, die diese URL zurückgeben sollte.
Das sieht also so aus, als ob es funktioniert, und damit können wir uns anmelden und anmelden, aber natürlich
machen wir im Moment nichts
mit diesem Token und natürlich haben wir auch keine Fehlerverwaltung oder eine Ladezustandsverwaltung.
Das sind also Dinge, die wir auch hinzufügen müssen.