颤振在另一个页面上获取用户 ID 并将其转换为字符串 ( "type 'Future<dynamic>' is not a subtype of type 'String'" )



我需要从我的个人资料页面上的当前登录用户那里获取用户 ID。我关注了Youtube上的网络忍者教程。这是我目前的方式

final FirebaseAuth _auth = FirebaseAuth.instance;
getCurrentUser() async {
final FirebaseUser user = await _auth.currentUser();
final uid = user.uid;
// Similarly we can get email as well
//final uemail = user.email;
print(uid);
//print(uemail);
}

但是如果我在我的脚手架中调用它,我会得到这个输出

类型">

未来"不是类型"字符串"的子类型

还有乌伊德。如何将其转换为字符串?还是有更优雅的方式?

谢谢!

你可以试着把它放在一个FutureBuilder

FutureBuilder<String>(
future: () async {
FirebaseAuth auth = FirebaseAuth.instance;
FirebaseUser user = await auth.currentUser();
String uid = user.uid.toString();
return uid;
}(),
builder: (context, snapshot) {
if (snapshot.hasData) {
return Text(snapshot.data);           // <- Customize your widget here
} else {
return CircularProgressIndicator();
}
},
)

相关内容

最新更新