如何解决Flutter 如何使用 GetX 设置 displayName?
我使用 GetX 创建了 Firebase 身份验证。
这是我的具有电子邮件和密码功能的createUser;
void createUser(String name,String email,String password) async {
try {
UserCredential _userCredential = await _auth
.createUserWithEmailAndPassword(email: email,password: password);
User _yeniUser = _userCredential.user;
await _yeniUser.updateProfile(displayName: name);
String yeniUserID = _userCredential.user.uid; //User UİD'sini elde ettik
await _firestore.collection("users").doc("$yeniUserID").set(
{
'eposta': email,'ad': _yeniUser.displayName,'saat': FieldValue.serverTimestamp(),'uid': yeniUserID,'aniVarmi': false,},) ... //Catch things..
当我按下注册按钮时,它会创建 Firestore 集合,除了 'ad': _yeniUser.displayName,
它始终为空。
我没有 userModel,也没有数据库服务。只是 Authcontroller。
我该怎么办?
解决方法
我假设您的 updateProfile 方法将返回用户。因此,您需要像这样再次设置 _yeniUser:
_yeniUser = await _yeniUser.updateProfile(displayName: name);
,
updateProfile 后尝试调用
await _yeniUser.reload();
使用更新的显示名称刷新您的用户变量。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。