2016-06-22 3 views
1

J'ai passé la meilleure partie d'aujourd'hui à la recherche d'une solution à cela. J'ai une page de connexion à laquelle je ne veux pas que les utilisateurs puissent revenir. Pour ce faire, il est nécessaire de réinitialiser la pile d'itinéraires, en supprimant la page de connexion de la pile. Bien que cela puisse être accompli avec les méthodes resetTo(route) et immediatelyResetRouteStack(route) de Navigator, ces deux méthodes annulent la belle animation de transition. Donc, après un peu de googling, je suis de retour à StackOverflow pour voir si je peux obtenir de l'aide. Ce dont j'ai besoin, c'est d'une transition animée entre les scènes, tout en réinitialisant la pile de route dans le processus. J'ai vu this link, et la première réponse ne fonctionnerait pas réellement. Vous n'avez pas accès à votre instance de Navigator à l'intérieur de la portée de la méthode onDidFocus, qui ne reçoit que l'objet route. Cela signifie que vous ne pouvez pas appeler les méthodes de Navigator à partir de cette fonction.Ajouter une animation à resetTo ou immédiatementResetRouteStack dans React Native?

Si je fais navigator.push(route), puis exécute manuellement navigator.immediatelyResetRouteStack(route) en utilisant un bouton, il réinitialise la pile avec succès. Cela me fait penser que setTimeout est la solution, mais que les deux semblent être une mauvaise pratique générale/une dérobade.

Je ne peux pas être le seul à avoir ce problème.

Répondre