Quindi stiamo facendo buoni progressi.
Abbiamo migrato tutti i nostri navigatori o quasi tutti.
Ora che dire dello switch navigator vuoto del navigatore QUI.
Bene, ti abbiamo spento Navigator di sicuro.
È uno Stack Navigator che è responsabile dello schermo esterno e noi.
Bene, che dire dello switch navigator.
Bene, non avremo più bisogno di cambiare navigatore.
Non esiste un pacchetto di switch slash di navigazione per reagire o qualcosa del genere.
Ma ci tornerò quando ne avremo bisogno.
Quindi per ora creiamo il nostro navigatore off stack o il nostro navigatore off stack qui chiamando navigator.
Chiamando create stack navigator ed esportiamo il nostro anno off navigator costante, che è di nuovo un componente
di reazione proprio come prima quando torniamo dallo stack dot navigator dot navigator.
E lì abbiamo la nostra schermata con il punto di navigazione del deck dell'ufficio e il nome dello schermo è spento.
Dato che lo abbiamo qui e facciamo il componente di cui abbiamo bisogno è fuori dallo schermo, quindi è quello.
Ora abbiamo le opzioni del diavolo NAF qui.
Quindi le opzioni dello schermo sul navigatore dovrebbero essere le opzioni di pisolino predefinite e 40 opzioni specifiche dello schermo.
Diamo un'occhiata allo schermo spento e se scorriamo verso il basso abbiamo anche alcune opzioni qui.
Esportiamo quindi le opzioni dello schermo qui come abbiamo fatto prima.
Esportiamolo e poi andiamo al navigatore del negozio qui e su quello schermo.
Impostiamo due opzioni fuori dallo schermo che ora dobbiamo aggiungere anche come importazione
nella parte superiore dello schermo, importiamo le opzioni dello schermo come opzioni dello schermo, quindi è così.
Ora abbiamo anche queste schermate di avvio, ma se guardiamo più da vicino in passato, le abbiamo
semplicemente indicate direttamente dall'interno del nostro switch Navigator, il che ci lascia con una sola domanda.
Che dire di questo interruttore di navigazione.
Ora in passato questa sarebbe stata la prima schermata che vedrai una volta caricata la mela perché è
la prima schermata più in alto in questa configurazione.
E poi abbiamo avuto la logica in quel vecchio contenitore di navigazione che abbiamo creato in precedenza, dove abbiamo verificato
se siamo autenticati e se ciò non fosse vero se non fossimo autenticati, reindirizzeremmo l'utente a
quello fuori dallo schermo.
Ora quando raggiungeremo lo schermo del negozio.
Bene, diamo un'occhiata alla schermata di avvio.
Lì vediamo che abbiamo provato ad eseguire l'autenticazione e qui alla fine andremmo alla schermata dei negozi quando
ci accediamo automaticamente.
Questa era la logica che abbiamo scritto lì.
Ora c'è ancora qualche logica che ha molto senso.
Dobbiamo solo modificarlo per il nuovo pacchetto di navigazione alla fine quello che possiamo vedere qui è che
all'inizio dello schermo stiamo cercando di bloccare l'utente e se non riusciamo a trovare i dati dell'utente memorizzati sul dispositivo andiamo
alla pagina off.
Se rileviamo che i dati sul token sono scaduti o no, andiamo alla pagina off.
Se riusciremo comunque con tutto e avremo un token valido, andremo invece alla pagina del negozio e inviamo
un'azione in cui autentichiamo l'utente che cambia stato e il nostro negozio
di redux che imposta i token inizialmente che il token nel nostro negozio è ora ora possiamo usarlo.
Che cosa succede se eliminiamo tutte queste chiamate di navigazione qui in modo da poterle eliminare o commentarle mentre lo sto
facendo qui.
Quindi eliminiamo invece tutte queste azioni di navigazione.
Cosa succede se torniamo qui.
Bene, se torniamo qui, l'esecuzione della disfunzione arresta Indiana proprio.
Si ferma.
E quello che sicuramente non facciamo è che non spediamo azioni.
Quindi sicuramente non impostiamo il token su nulla.
È ancora no.
Succede sempre qui, a meno che non arriviamo in fondo, nel qual caso abbiamo un token.
Ci abbiamo inviato e il token non è nullo.
Sono spesso nel nostro negozio.
Quindi quel token che gestiamo con redux è ancora adesso o contiene un valore.
Ora voglio modificare un po 'il negozio di redux.
La parte fuori di esso e tutti voi per l'utente e aggiungerò un nuovo pezzo di dati
a questo stato e questo è il tentativo di tutto per accedere alla chiave.
Puoi nominarlo come vuoi e lo imposterò su false inizialmente qui.
Voglio archiviare se abbiamo provato ad accedere l'utente o meno.
Ora se eseguiamo l'autenticazione.
Quindi, se inviamo un'azione con quell'identificatore, imposterò il tentativo di accesso automatico su true.
Aggiungerò anche una nuova azione qui nelle azioni off e per questo aggiungerò un
nuovo identificatore qui che nominerò set provato o una L per il login automatico ha provato una L e ho creato un creatore di azioni
per quello set ha provato una L che non accetta argomenti.
E dove non ho restituito il mio oggetto azione dove digitare è appena impostato.
Ho provato a ..
Potresti anche metterlo in fondo al file non importa.
Ora perché lo sto facendo.
Lo vedrai nel secondo.
Torniamo al riduttore, togli il riduttore e gestiamo questo nuovo caso.
Il set di casi ha provato a l.
Assicurati che anche l'importazione provenga da azioni di ogni anno in cui restituiamo un nuovo stato in cui copio il vecchio stato e
dove ho detto che ho provato ad accedere automaticamente in modo che il token possa essere ancora conoscenza, basta
impostare questo su vero.
Ora la mia idea è che invio questa azione qui nella schermata di avvio.
In tutti gli scenari in cui in precedenza eravamo andati fuori dallo schermo, quindi dove abbiamo provato ad accedere ma dove
non ci siamo riusciti.
Quindi sì spedirò il set provando A. L. quindi assicurati di accedere a questo nelle tue azioni off proprio in
questo modo e fallo in questi due casi in cui in precedenza siamo passati allo schermo spento.
Quindi ora abbiamo questo nuovo campo e redux e perché lo sto facendo.
Perché è utile?
Bene, perché con la navigazione di reazione 5 non c'è più alcun interruttore di navigazione perché non ne abbiamo
più bisogno poiché ora gestiamo l'intera configurazione del nostro percorso.
Perché sono componenti possiamo semplicemente renderizzare dinamicamente i componenti per farli avere un effetto o non renderli
così nel navigatore dell'app in cui eseguo il rendering del navigatore dei miei prodotti.
Ora è il momento di aggiungere tutti questi navigatori da configurare e quindi decidere quale navigatore dovrebbe
essere reso quando così dal navigatore del negozio.
Ora in realtà voglio importare questo
navigatore negozio qui che esporterò di nuovo come costante e quindi qui un navigatore app che importazione
navigatore negozio.
Questo è il nostro disegnare un navigatore.
Tienilo a mente ed è quello che voglio rendere qui.
Shop Navigator.
Quindi questo è fondamentalmente ciò che voglio rendere se siamo bloccati nel nostro negozio proprio in precedenza che è ciò
che abbiamo mappato a questa chiave negozio nel navigatore di switch.
Ora abbiamo tutti bisogno del navigatore off nella schermata di avvio.
Quindi ecco un navigatore di app.
Importerò off navigator e questi sono gli unici due navigatori che devo importare qui.
Quindi puoi rimuovere la dichiarazione di esportazione su tutti gli altri navigatori qui nel nostro file del navigatore del negozio, ma
ciò che sarà anche necessario importare nel navigatore dell'app è ora la schermata di avvio.
Quindi importiamo la schermata di avvio dalle schermate schermata di avvio e ora qui abbiamo il navigatore del negozio.
Abbiamo il navigatore spento in alternativa e abbiamo anche una schermata di avvio profondo ora renderà solo
uno dei gratuiti e.
Ed è qui che possiamo riutilizzare il redux.
Copierò il selettore di utilizzo perché le informazioni del sito sul token
mi interessano anche conoscere il campo di accesso che ho aggiunto allo stato spento qui.
Questo nuovo campo ha aggiunto ora ottengo l'accesso a questo qui nel mio file di navigatore app e memorizzato e ho provato
tutti a effettuare il login costante.
Ora so che voglio renderlo per fare acquisti se tutto ciò è vero e fa è come possiamo farlo se siamo autenticati.
Rendo sempre al negozio non mi interessa nient'altro.
Ora voglio renderizzare il navigatore off se è dei suoi difetti e abbiamo ancora provato ad accedere perché
se non abbiamo provato ad accedere automaticamente allora voglio effettivamente rendere la schermata di avvio quindi se non
siamo autenticati e abbiamo fatto non provare ancora il nostro accesso automatico.
Bene, allora non sappiamo se l'utente potrebbe essere un autenticatore o meno.
Quindi in quel caso voglio renderizzare alla schermata di avvio ora voglio un POS lì e assicurarmi di essere tutti
sulla stessa pagina e tutti capiamo perché ora stiamo usando questo invece del commutatore di navigazione.
Ora, prima di tutto, non esiste più alcun interruttore di navigazione in Reattiva navigazione 5.
Ma perché è stato rimosso.
Bene, poiché ora configuriamo tutto con componenti, possiamo usare strumenti di reazione regolari per renderizzare o
meno un componente.
Se non stai pensando alla navigazione, ma a una schermata normale in cui potresti avere un
testo che vuoi mostrare solo in modo condizionale, allora useresti un certo stato e poi in J è X, a
volte potresti solo renderizzare un testo con un'espressione ternaria .
E stiamo facendo lo stesso qui con la nostra configurazione del percorso con le nostre
configurazioni dello schermo qui l'impostazione della configurazione dello schermo che abbiamo qui sono diversi navigatori e alla
schermata di avvio questi sono alla fine tutte le cose che reagiscono dovrebbero essere consapevoli di portare qualcosa sul schermare
e reagire alla navigazione dietro le quinte, impolverando pesantemente, interpretando la nostra configurazione e assicurandosi che il
componente corretto venga visualizzato sullo schermo.
Ora se usiamo è disattivato e abbiamo provato ad accedere automaticamente per controllare quale navigatore è effettivamente renderer in grado di reagire usando
un'espressione ternaria, allora assicuriamo che se per esempio è spento non è vero non c'è modo che le
schermate del navigatore negozio possano essere portato sullo schermo.
Perché.
Poiché il componente del navigatore del negozio che contiene la nostra configurazione radice correlata al negozio, la nostra configurazione dello
schermo di quel componente viene visualizzata solo se Office è true.
Quindi non è possibile visualizzare sullo schermo una schermata relativa al negozio se l'opzione è disattivata.
Effettua davvero il confronto con elementi di testo normali o caselle normali su uno schermo che esegui il rendering in modo condizionale.
Stiamo facendo lo stesso qui, ma non con le caselle e il testo ma invece con l'intero stack di navigazione.
Questo è quello che facciamo qui e con tutto ciò che se salviamo questo
e lo eseguiamo di nuovo su Android finiamo fuori dallo schermo e se lo ricarico e ricostruito finiamo di nuovo lì.
Ora, se provo ad accedere qui, ora
ho effettivamente un problema qui.
Viene visualizzato un errore che indica che la navigazione con un payload del negozio non è stata gestita correttamente.
Questo ora ha senso se ci pensate.
Non abbiamo più alcun interruttore di navigazione.
Invece controlliamo solo quale navigatore vogliamo rendere in quali circostanze.
Allora perché stiamo ottenendo questo.
Riesci a capirlo e risolverlo da solo.
Altrimenti lo faremo insieme lo ripareremo insieme nella prossima lezione.