gpt4 book ai didi

firebase - 在每个屏幕上获取当前Firebase用户的正确方法是什么?

转载 作者:行者123 更新时间:2023-12-03 03:38:38 25 4
gpt4 key购买 nike

我已成功使用Flutter设置了应用程序,并进行了注册并使用Firebase身份验证登录。

登录后,我回到主屏幕,在该屏幕上我得到用户:

class Home extends StatefulWidget {
@override
_HomeState createState() => _HomeState();
}

class _HomeState extends State<Home> {
final FirebaseAuth _auth = FirebaseAuth.instance;
FirebaseUser user;

@override
void initState() {
super.initState();
initUser();
}

initUser() async {
user = await _auth.currentUser();
setState(() {});
}

@override
Widget build(BuildContext context) {
return SafeArea(
child: Scaffold(
//appBar: AppBar(title: const Text("Run to Feel Better")),
body: Center(
child: Column(
children: <Widget>[
if (user == null)
RoundedButton(
buttonTitle: 'Crea un account',
color: kRTFBBlue,
onPressedFunction: () {
Navigator.pushNamed(context, '/account');
},
)
else
Text("${user?.email}"),
],
),
),
bottomNavigationBar: bottomBar(context, 0),
), // /widgets/home_scaffold.dart
);
}
}

因此,一切正常,但是我的问题是:让当前用户进入其他页面的正确方法是什么?我是否需要使用FirebaseAuth.instance重新检查每个屏幕,还是可以保存它并在页面之间共享(也许使用提供程序包)?

非常感谢你。

最佳答案

当然,您可以同时执行两种操作,即可以使用state managementFirebaseAuth实例存储在某个位置,但是,您也可以一直调用FirebaseAuth.instance

我能想到的唯一有值(value)的见解是,调用FirebaseAuth.instance完全可以(不是特别昂贵)-其他所有内容可能完全基于观点。

关于firebase - 在每个屏幕上获取当前Firebase用户的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58921352/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com