我正在使用Navigator.pushNamedAndRemoveUntil()我遇到的方法RoutePredicate。
我在任何地方都找不到完美的解释RoutePredicate。
有人可以解释一下吗?
小智 6
谓词是一种函数,它接受一项作为输入,并根据该项是否满足某个条件返回 true 或 false。
路由谓词是一种删除路由直至找到具有特定名称的路由的函数。Navigator.pushNamedAndRemoveUntil()如果谓词返回 true 将停止执行,否则如果谓词返回 false 将继续删除路由。
要删除推送的路由下面的所有路由,请使用始终返回 false 的 RoutePredicate。例子-
Navigator.of(context)
.pushNamedAndRemoveUntil('/login', (Route<dynamic> route) => false);
Run Code Online (Sandbox Code Playgroud)
这里使用始终返回 false 的 RoutePredicate (Route<dynamic> route) => false。/login在这种情况下,它会删除除推送的新路由之外的所有路由。
参考 - https://api.flutter.dev/flutter/widgets/Navigator/pushNamedAndRemoveUntil.html
| 归档时间: |
|
| 查看次数: |
1557 次 |
| 最近记录: |