我正在尝试通过以下代码根据google auth的身份验证阶段推送路由器,
void authenticationUser(FirebaseUser user){
_repository.authenticateUser(user).then((isNewUser){
if(isNewUser){
_repository.addDataToDb(user).then((value){
Navigator.pushReplacement(context,
MaterialPageRoute(builder: (context){
return HomeScreen();
})
)
});
}else{
Navigator.of(context).pushReplacement(
MaterialPageRoute(builder:(context){
return HomeScreen();
})
);
}
});
}
但是Navigator.of(context)显示未定义上下文的错误,请问任何解决方案?在此先感谢..:)
答案 0 :(得分:1)
使用如下所示的方法Context
可以尝试以下方法:-
void authenticationUser(FirebaseUser user,BuildContext context){
_repository.authenticateUser(user).then((isNewUser){
if(isNewUser){
_repository.addDataToDb(user).then((value){
Navigator.pushReplacement(
context, MaterialPageRoute(builder: (context) => screen));
})
)
});
}else{
Navigator.pushReplacement(
context, MaterialPageRoute(builder: (context) => screen));
}
});
}