我使用MongoDB在Flutter中创建了一个SignIn页面,当用户输入有效凭据时,必须将其导航到HomePage,否则它们应该留在同一页面中。我如何实现这种逻辑?
当他们输入有效的凭据时,我可以在控制台中成功打印用户,但是如果isLogin = true,如何导航到下一页?
Future<String> signIn() async {
final response = await http.post(
serverReceiverPath,
headers: {'Content-Type': 'application/json'},
);
if(response.body == 'Login successful'){
isLogin = true;
}else{
isLogin = false;
}
print(response.body);
print(isLogin);
}
最佳答案
只需使用Navigator
if(response.body == 'Login successful'){
isLogin = true;
Navigator.of(context).pushReplacementNamed('/home');
}else{
isLogin = false;
}
您可以在此处了解更多信息:https://flutter.dev/docs/cookbook/navigation/named-routes您也可以从以下最新答案中尝试我的
ConditionalRouter
实现:Making Private Route in Flutter关于flutter - 根据抖动情况导航到下一页,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/63685011/