【发布时间】:2020-08-05 13:18:29
【问题描述】:
FirebaseUser loggedinuser;
FirebaseAuth _auth = FirebaseAuth.instance;
Future<void> currentUser()async
{
try
{
FirebaseUser user = await _auth.currentUser();
if(user != null)
{
setState(() {
loggedinuser = user;
});
}
}
catch(e){
print(e);
}
}
@override
void initState() {
super.initState();
currentUser();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("Logged in"),
centerTitle: true,
backgroundColor: Colors.green,
),
body: Container(
alignment: Alignment.center,
padding: EdgeInsets.symmetric(horizontal: 20,vertical: 20),
child: Text(loggedinuser.providerId)
你好,我是 FLutter 新手,正在做一个小项目来练习 但是每当我尝试显示用户名时,我都会收到一条错误消息,说 Text 小部件不能为空,但我使用 setState 初始化了登录用户 我可以看到电子邮件,但屏幕上看不到名字 感谢您的帮助
【问题讨论】:
-
因为你是异步加载用户,你需要一个 FutureBuilder。
标签: firebase flutter firebase-authentication