Ich möchte den angezeigten Namen zu dem Benutzer hinzufügen, der gerade erstellt wurde. Aber wenn ich UserWithEmailAndPassword createUserWithEmailAndPassword, ist mein aktuellerUser null. Irgendwas falsch?Hinzufügen des displayNames während der Verwendung von createUserWithEmailAndPassword
4
A
Antwort
15
createUserWithEmailAndPassword
ist ein asynchroner Aufruf wie fast jede andere Funktion in Firebase. Sie erstellen den Benutzer (am wahrscheinlichsten erfolgreich), aber dann sofort nachdem Sie versuchen und greifen Sie die currentUser
. In fast allen Fällen werden Sie versuchen, die currentUser
zu erhalten, bevor Firebase Ihren Benutzer erstellt hat.
Rewrite innen Rückruf:
firebase.auth().createUserWithEmailAndPassword(email, password).then(function(user) {
// [END createwithemail]
// callSomeFunction(); Optional
// var user = firebase.auth().currentUser;
user.updateProfile({
displayName: username
}).then(function() {
// Update successful.
}, function(error) {
// An error happened.
});
}, function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// [START_EXCLUDE]
if (errorCode == 'auth/weak-password') {
alert('The password is too weak.');
} else {
console.error(error);
}
// [END_EXCLUDE]
});
.then
wird nach Erfolg und function(error)
aufgerufen wird, auf Fehler aufgerufen werden. Sie möchten Ihren Benutzer festlegen, nachdem die Benutzererstellung erfolgreich war.
Einige Leute mögen die verschachtelten Rückrufe nicht, so dass Sie eine Funktion erstellen können, die den aktuellen Benutzer erhält und die Funktion bei Erfolg aufruft.
Dokumente:
Verwandte Themen
- 1. Hinzufügen von UIBarButtonItem zu NavigationBar während der Verwendung von UIPageViewController
- 2. Batterieabfluss des iPhone während der Verwendung von Ortungsdiensten
- 3. $ createUserWithEmailAndPassword erstellt bei der Verwendung von AngularFire einen Benutzer, gibt aber keine Antwort zurück
- 4. Fragmentierungsansicht während der Verwendung von FragmentStatePagerAdapter aktualisieren
- 5. Neugestaltung des Knoten-Kommentars während der Verwendung des nodecomment Moduls
- 6. Speicherlecks während der Verwendung von Doppel-Array
- 7. CreateUserWithEmailandPassword stoppt beim Eingeben der While-Schleife?
- 8. Verhindern CSRF während der Verwendung von CORS?
- 9. Framework Blackboxing während der Verwendung von Webpack?
- 10. Zugriffssteuerelemente während der Verwendung von MasterPage
- 11. Verbindungsfehler während der Verwendung von Cqlsh
- 12. autoActivityTracking während der Verwendung von google-services.json
- 13. Logisches Problem während der Verwendung von Beschleunigungsmesser
- 14. Speicherlecks während der Verwendung von gstbuffer
- 15. Firebase v3 createUserWithEmailAndPassword .thier Versprechen
- 16. Mehrdeutige Verwendung von Tiefgestellt - geschieht nur während des Archivs
- 17. Dynamisches Hinzufügen von Daten während Erreichen Ende des Scroll Positon
- 18. 301 Status während der Verwendung der Postanforderung
- 19. Boost-Funktion während der Verwendung löschen
- 20. Wie funktioniert der Semi Colon während der Verwendung von out.write?
- 21. Wie bekomme ich den Indexwert während der Verwendung von ko.utils.arrayForEach
- 22. NullPointerException während der Verwendung von Put-Methode von HashMap
- 23. Probleme beim Subtrahieren von Variablen während der Verwendung von jQuery
- 24. Halten der Seite während des SharePoint-Upgrades?
- 25. Fortschrittsbalken, der während des Betriebs
- 26. Benutzer werden aufgefordert, ein Passwort während der Verwendung von gitolite
- 27. 0xcdcdcdcd während der Verwendung dieser->
- 28. Wie installiere ich CPAN-Module während der Verwendung von Perlbrew?
- 29. Einen Wert für LIMIT während der Verwendung von Massensammeln setzen
- 30. Fehler 401: nicht autorisiert, auch nach der Verwendung von API-Schlüssel während der Verwendung von www.openweathermap.org
Ordnung der Spitze mit der .then (function() {...}); war gut und funktioniert, aber der Benutzer, updateProfile nicht ... Es zeigt die displayName als null, wenn ich eine Überprüfung auf dem aktuellen Benutzer und zusätzlich kann ich nicht die .set-Funktion für die Datenbank arbeiten .... Irgendwelche Tipps? – Marc
https://firebase.google.com/docs/auth/web/manage-users – Marc
Probieren Sie meine neue Antwort aus, 'user' wird anstelle von' error' in den success callback übernommen und 'user' wird verwendet, um' 'zu setzen displayName " – theblindprophet