1

Ist es möglich, Benutzer in Firebase mit einem zusätzlichen Feld zu erstellen? In meinem Code kann ich sie mit "E-Mail" und "Passwort" erstellen.AngularFireAuth. Benutzer mit zusätzlichem Feld erstellen

this.af.auth.createUser({ 
    name: formData.value.name, // gives error* 
    email: formData.value.email, 
    password: formData.value.password 
    }).then(

* error:

signup.component.ts (26,9): Argument des Typs ‚{Name: vorhanden; E-Mail: any; Passwort: beliebig; } 'ist nicht dem Parameter' EmailPasswordCredentials 'zuweisbar. Objektliteral darf nur bekannte Eigenschaften angeben, und 'Name' existiert nicht im Typ 'EmailPasswordCredentials'.

Ich möchte zusätzliche Felder hinzufügen, wie „Geburtsdatum“, „displayname“ usw.

Vielen Dank

Antwort

1

der documentation Nach Sie dies nicht tun können. Sie können diese zusätzlichen Felder jedoch zu den Daten hinzufügen. Ich benutze eine Benutzereinstellungen Struktur, wo die gleiche Benutzer-ID ist, und dann haben Sie eine vollständige Struktur verfügbar.

Ich benutze einen Ordner der Basisdatenstruktur, UserSettings, um die benutzerdefinierten Felder zu halten, und dann diese Daten zur gleichen Zeit wie ich die Authentifizierung in einem Angular Data Provider zu bekommen.

"UserSettings": { 
    // User Specified Settings should be read/write by the user 
    "$user_id": { 
     ".read": "$user_id === auth.uid", 
     ".write": "$user_id === auth.uid" 
    } 
} 

Firebase Daten

+ - /UserSettings 
    + /<user id string> 
     + Name 
     + BirthDate 
Verwandte Themen