我想為新用戶撰寫一個初始啟動程式,只是讓他們輸入他們的初始用戶名、電子郵件,可能還有密碼,
如果您打算使用 Firebase 進行身份驗證。MaterialApp還有另一種方法可以在不使用Wrapper類的情況下檢查用戶是否登錄。FirebaseAuth 使用以下方法回傳當前用戶。為此,您還需要state management在專案中考慮。
initialRoute:FirebaseAuth.instance.currentUser != null ? '/home' : '/welcome',
uj5u.com熱心網友回復:
我不太明白你的問題,但據我所知,我建議下面的代碼,所以你可以先通過這種方法控制檢查新用戶,通過 sharedPreferences 包設定一個布林值
TextButton get isNewUserButton=> TextButton(onPressed: ()async{
final prefs = await SharedPreferences.getInstance();
prefs.setBool('isNewUser',true);
}, child: const Text("Get Started"));
然后,
void main()async {
final prefs = await SharedPreferences.getInstance();
final showHomePage = prefs.getBool('isNewUser') ?? false;
runApp(MaterialApp(
title: 'App',
themeMode: ThemeMode.system,
theme: MyThemes.lightTheme,
darkTheme: MyThemes.darkTheme,
home: showHomePage ? MyApp() : NewUserSignPage ,
));
}
如果用戶退出,您可以使用此代碼
TextButton get signOutButton=> TextButton(onPressed: ()async{
final prefs = await SharedPreferences.getInstance();
prefs.setBool('isNewUser',false);
}, child: const Text("Sign Out"));
uj5u.com熱心網友回復:
您可以使用命名路由。在您的 MaterialApp 中,您可以設定一個布林值,無論用戶是否登錄。例如;
initialRoute: isUserLoggedIn == null ? '/login-screen' : '/home-screen';
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/433463.html
