【发布时间】:2019-07-10 02:30:51
【问题描述】:
我是 Flutter 的新手,对 firebase 非常非常陌生。
我正在尝试通过 createUserWithEmailAndPasswordMethod 创建用户。 我已成功创建,但我试图通过允许用户输入所需的用户名并将所述用户名设置为 displayName 属性来改进它。
我的代码如下:
_createUser() async {
UserUpdateInfo updateInfo = UserUpdateInfo();
updateInfo.displayName = _usernameController.text;
FirebaseUser user = await _auth
.createUserWithEmailAndPassword(
email: _emailController.text,
password: _passwordController.text,
)
.then((user) {
user.updateProfile(updateInfo);
});
print('USERNAME IS: ${user.displayName}');
}
问题是当我运行应用程序时,它总是抛出这个异常:
NoSuchMethodError: The getter 'displayName' was called on null.
每次我调试user 变量时,都会显示为空,即使用户已创建并且我可以打印电子邮件和密码!
我猜问题是Firebase user 为空,但即使我将print('USERNAME IS: ${user.displayName}'); 移到updateProfile 之后,也会发生同样的情况。
希望大家帮忙! 谢谢。
【问题讨论】:
标签: firebase login dart flutter firebase-authentication