一尘不染

颤振删除所有路线

flutter

我想开发一个注销按钮,该按钮会将我发送到登录路线,并从中删除所有其他路线Navigator。该文档似乎并未解释如何制作RoutePredicate或具有任何removeAll函数。


阅读 153

收藏
2020-08-13

共1个答案

一尘不染

我可以使用以下代码完成此操作:

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

这里的秘密是使用始终返回false的RoutePredicate (Route<dynamic> route) => false。在这种情况下,它将删除除/login我推送的新路线以外的所有路线。

2020-08-13