Ron*_*ler 5 browser back-button flutter-navigation flutter-web
我正在使用 Navigation 2 并setUrlStrategy(PathUrlStrategy());
添加了它WillPopScope,但onWillPop单击浏览器的后退按钮时不会调用 。
Widget build(context) {
return WillPopScope(
onWillPop: () async {
print('here');
if (currentStep == 0) {
return false;
}
return true;
},
child: Scaffold(...
Run Code Online (Sandbox Code Playgroud)
在 Navigator 2.0 中,Web 浏览器是按时间顺序排列的,并且基本上将所有导航视为推送。
设想:
在这种情况下,Flutter 会将之前的路由(屏幕 1)压入堆栈。
换句话说,浏览器后退按钮不再触发onPopRoute。相反,它会触发 onPushRoute。
我相信它是这样设计的,以便每个导航操作都可以被视为深度链接。考虑到这一点,如果您正在开发一款 Web Flutter 应用程序,您应该尽可能避免将参数从一个路由传递到另一个路由。
https://github.com/flutter/flutter/issues/71122#issuecomment-733864359
| 归档时间: |
|
| 查看次数: |
1559 次 |
| 最近记录: |