W Firebase 2 mi było wykonać synchronicznego sprawdzenie, czy użytkownik został zalogowany, npFirebase 3 - ref.getAuth() równoważne
if (!ref.getAuth()) ..go to login page
else ..show page
może uzyskać dostęp do stanu currentUser
z firebase.auth().currentUser
tak starałem się zrobić.
if (!firebase.auth().currentUser) ..go to login page
else ..show page
problemem jest to, że zawsze jest początkowo pusty, więc to przekierowuje do strony logowania, a następnie kilka chwil później onAuthStateChanged
dzieje, a użytkownik jest zalogowany
Czy jest jeszcze jakiś sposób, aby to sprawdzić synchronicznie? Lub w inny sposób czy istnieje obietnica, której mogę słuchać, aby pokazać spinner ładujący? Dzięki.
Dzięki, ale dla mnie jest małe opóźnienie około 2s, myślę, że będę musiał pokazać spinner ładujący, a następnie przekierować lub pokazać stronę, gdy pojawi się 'onAuthStateChanged'. –
W powyższym kodzie przepływ jest prawidłowy. Jeśli opóźnienie jest zauważalne dla użytkownika, można łatwo dodać wskaźnik ładowania, pokazując go, gdy widok ładuje się i ukrywa, gdy uruchamiane jest 'onAuthStateChanged()'. –
To właśnie zrobiłem - dobrze wiedzieć, że czegoś mi nie brakowało i to jest oczekiwany sposób –