【发布时间】:2021-08-27 16:16:25
【问题描述】:
参考最近关于FirebaseUser 到User 的更改。 FirebaseAuth.instance.currentUser() 根本找不到(通过错误 "The expression doesn't evaluate to a function, so can't be invoked."
然而,解决方案是简单地删除括号为FirebaseAuth.instance.currentUser。但现在我们有另一个错误,它不是未来的类型,即“参数类型User不能分配给参数类型Future<Object?>?”。
以下是我的代码块。
return FutureBuilder(
future: FirebaseAuth.instance.currentUser,
builder: (ctx, futureSnapshot) => ListView.builder(
reverse: true, // So that 1st message goes to last.
itemCount: chatDocument.length,
itemBuilder: (ctx, index) => MessageBubble(
message: chatDocument[index]['text'],
isMe: chatDocument[index]['userId'],
),
),
);
在上面的代码块中,我打算为我的 `FutureBuilder` 提供未来。总之,之前 `FirebaseUser` 对象确实返回了一个未来,但可能 `User` 不再返回了。我该如何处理这种情况?
提前致谢。
【问题讨论】:
-
你必须删除 FutureBuilder ,并使用 FirebaseAuth.instance.currentUser syimply 因为它不是未来
-
是的。这样可行。谢谢。
标签: firebase flutter dart firebase-authentication flutter-futurebuilder