0
votes

Comment revenir à la première page de l'application dans l'application Flutter?

J'ai donc créé une application qui a environ 4 pages, puis une vue Web, donc chaque fois que l'utilisateur se déconnecte de la vue Web, je pousse l'écran de démarrage. Je veux que mon application accède à la première page que j'ai essayée

final routes = {
'/login': (BuildContext context) => new LoginScreen(),
'/home': (BuildContext context) => new HomeScreen(),
'/welcomeScreen':(BuildContext context) => new WelcomeScreen(),
'/email': (BuildContext context) => new EmailScreen(),
'/webview': (BuildContext context) => new WebviewScreen()
};

mais pas de chance. Je pense que c'est peut-être à cause du webview. ce sont mes itinéraires.

Navigator.of(context).pushNamed('/welcomeScreen');
Navigator.popUntil(context,ModalRoute.withName('/welcomeScreen'));

»


1 commentaires

La réponse suivante a-t-elle fonctionné pour vous? si c'est pouvez-vous accepter la réponse s'il vous plaît!


3 Réponses :


3
votes

Cette fonction définira la page racine de la page afin qu'elle fonctionne pour le cas de déconnexion.

Navigator.pushAndRemoveUnitl est ce que vous cherchez, je suppose.

makeRoutePage(context: context, pageRef: YourFirstPage());

comment l'utiliser :

void makeRoutePage({BuildContext context, Widget pageRef}) {
  Navigator.pushAndRemoveUntil(
      context,
      MaterialPageRoute(builder: (context) => pageRef),
      (Route<dynamic> route) => false);
}


0 commentaires

1
votes

Une solution alternative peut être Navigator.popUntil(context, ModalRoute.withName('/')); qui fera apparaître tous les écrans de la pile à l'exception de l'écran initial.


0 commentaires

0
votes

Utilisez simplement ce code dans n'importe quelle action de bouton, il redirigera U vers MainScreen / Homepage à partir de n'importe quelle autre page

Navigator.of(context).pushNamedAndRemoveUntil('/', (Route<dynamic> route) => false);


0 commentaires