Я пытаюсь сохранить некоторые данные, когда пользователь регистрируется, но, возможно, я не вызываю права FirebaseUser. Какие-либо предложения?
Код:
String errorMessage;
String name;
String password;
String email;
String role;
bool obscure = true;
FirebaseUser instructor;
final FirebaseAuth _auth = FirebaseAuth.instance;
final db = Firestore.instance;
void saveData() async {
await db.collection("instructori")
.document(instructor.uid)
.setData(
{
'Nume': name,
'Rol': role,
'Email': email,
'Parola': password,
'UID': instructor.uid
}
);
}
Future<void> registerUser() async {
instructor = await _auth
.createUserWithEmailAndPassword(
email: email,
password: password,
).then((onValue) {
saveData();
Navigator.of(context).pushNamed(ClientiPage.id);
}).catchError((error) {
errorMessage = error;
});
Navigator.of(context).pushNamed(ClientiPage.id);
}
Пользователь успешно прошел аутентификацию, но я не вижу данных, сохраняемых в дереве пожарного депо. У меня все работает в консоли, поэтому я предполагаю, что это код.
Ошибка:
E/flutter ( 5527): Tried calling: uid
E/flutter ( 5527): #0 Object.noSuchMethod (dart:core-patch/object_patch.dart:53:5)
E/flutter ( 5527): #1 _RegisterPageState.saveData
package:euroswimming_instructori/register_page.dart:29
E/flutter ( 5527): #2 _RegisterPageState.registerUser.<anonymous closure>
package:euroswimming_instructori/register_page.dart:48
E/flutter ( 5527): #3 _rootRunUnary (dart:async/zone.dart:1134:38)