Ora assicuriamoci di poter anche accedere e per quello nel creatore dell'azione auth, quindi nella cartella delle azioni
del negozio nel file auth, possiamo duplicare il creatore dell'azione
di registrazione, copiarlo e rinominare quella copia per accedere e anche questo avrà bisogno un'e-mail
e una password ma invierà la richiesta a un URL leggermente diverso.
Se dai un'occhiata ai documenti ufficiali per l'accesso, questo
è il tuo URL. Ora potrebbe sembrare quasi
uguale ma qui, la differenza è questa parola, accedi con password, invece di iscriverti dopo due punti account.
Questo è ciò che dobbiamo modificare per avere di nuovo
un URL valido e ovviamente, quindi, potresti anche pensare a come unire questo in una funzione e riutilizzare
il codice, lo lascerò esplicitamente diviso qui per chiarire che noi abbiamo due funzioni separate qui e ora
con ciò, stiamo inviando una richiesta a questo URL. Dobbiamo ancora allegare e-mail, password e questo
campo token sicuro di ritorno che dovrebbe essere sempre vero e restituiremo praticamente gli
stessi dati di quando ci iscriviamo, solo un campo aggiuntivo che ci dice sostanzialmente
se questa e-mail è parte di un account esistente. A parte questo, inviamo qui gli stessi dati, possiamo lasciarli così come
sono, vogliamo
avere questo controllo qui e quindi qui, posso quindi registrare anche i miei dati di risposta.
Ovviamente non voglio inviare un'azione di registrazione qui ma invece, in seguito invia una nuova azione di accesso, anche se per ora non
stiamo facendo nulla
lì, lo faremo presto, posso già modificare
ciò che abbiamo inviato . Detto questo, vediamo se funziona,
ma per
questo ovviamente, sono necessarie alcune modifiche nella schermata di autenticazione perché in questo momento, sempre quando
premiamo questo pulsante, registriamo sempre in questo momento e non è quello che voglio, invece di sempre iscrivendomi, voglio registrarmi
o accedere a seconda della modalità in cui ci troviamo e questa modalità dovrebbe essere modificabile con l'aiuto di questo
pulsante che ci consente di passare da una modalità all'altra.
Quindi, per essere in grado di passare da una modalità all'altra, dobbiamo gestire alcuni stati aggiuntivi nella schermata di autenticazione, fondamentalmente
uno stato che ci consente di scoprire se siamo in modalità login o in modalità iscrizione.
Quindi qui uso il mio stato e comincio con false perché questo dovrebbe dire è sign up e set is sign up e questo quindi ci dice se siamo
attualmente in modalità di iscrizione o se questo è falso se siamo in modalità di accesso fondamentalmente
perché
queste sono le due modalità che abbiamo, giusto?
Quindi l'iscrizione è inizialmente falsa perché inizialmente, voglio essere in modalità di accesso e ora possiamo
usare è iscriversi per determinare cosa succede quando premiamo il pulsante di accesso, ma anche quale
testo abbiamo generato lì. Quindi cominciamo con il
testo, qui non sempre voglio dire
login, invece voglio controllare se la registrazione è vera,
quindi qui voglio dire registrazione e voglio solo dire login se non è vero e qui
ovviamente, non voglio sempre dire passare all'iscrizione, quello che dico
qui dipende dalla modalità in cui ci troviamo.
Quindi qui, ora userò back tick con switch su, in modo che qui possa iniettare un valore dinamico che ora dipende da è iscriversi e
quindi il valore dinamico è una stringa in cui dico login perché se è registrato è vero,
passiamo alla modalità di accesso o se la registrazione è falsa,
passiamo alla modalità di registrazione perché siamo nella modalità di accesso, in modo che il testo cambi.
Ora qui in questa funzione, voglio chiamare set è iscriversi e sostanzialmente invertirlo, per questo possiamo usare quella forma
di funzione per aggiornare questo dove qui otteniamo il nostro stato precedente, quindi dove passo una funzione
alla funzione setter qui e Restituisco ciò che lo stato precedente non è.
Quindi lo stato precedente ovviamente è un valore booleano perché con il segno è in corso, stiamo
gestendo uno stato booleano che
inizialmente è falso e ora qui quindi ottengo quello stato corrente e imposto l'opposto come nuovo stato.
Quindi, se questo è attualmente vero, l'ho impostato su falso, se era falso l'ho impostato su vero,
ecco cosa sta succedendo qui.
Ora dobbiamo solo assicurarci che accadano cose diverse qui e per questo, lo rinominerò dal gestore
di iscrizione al gestore di autenticazione per essere più generico nella sua denominazione e, naturalmente, legherò il mio gestore di autenticità laggiù e ora in
quel gestore di autenticazioni funzione, possiamo verificare in quale modalità siamo.
Quindi qui posso controllare se la registrazione è vera e
se è così, quindi ovviamente voglio inviare questa azione, quindi va bene. Altrimenti, se ciò non è vero, voglio inviare
l'altra azione e quindi possiamo anche cambiarlo un po ',
inviarlo laggiù e definire la nostra
azione quassù e ora la mia azione inizialmente
non è definita e quindi ho impostato l'azione su questo o ho impostato azione uguale a auth azioni accedi con i valori di input
dello stato del modulo e-mail e password con i valori di input dello stato del modulo, come quello e ora l'azione è una variabile che posso passare
per inviare lì.
Quindi invio sempre questa azione, ma questa azione è il risultato della registrazione delle azioni auth o del login delle azioni auth a
seconda che ci troviamo in modalità registrazione o in modalità login. Detto questo, siamo davvero flessibili e ora se
lo salviamo, se passo qui, vedrai anche gli aggiornamenti di testo qui su Android e quindi ora se passo alla
modalità di accesso, quindi se questo dice login e provo ad accedere qui, assicurati di inserire le stesse
credenziali che hai usato prima per creare questo e premo login, questo sembra abbastanza
buono, ottengo
l'output della mia console qui con i dati
che questo URL dovrebbe restituire.
Quindi sembra che funzioni e con ciò, siamo in grado di registrarsi e accedere, ma ovviamente non stiamo facendo nulla con
quel token in questo momento e
ovviamente non abbiamo nemmeno una gestione degli errori o una gestione dello stato di caricamento.
Quindi queste sono cose che dovremo anche aggiungere.