基于页面的路由无法使用命令式 api 完成,而是提供一个没有相应页面的新列表到 Navigator.pages。'package:flutter/src/widgets/navigator.dart': 断言失败: 第 3075 行 pos 7: '!hasPage || 正在等待退出决定'
只有 Navigator.push 有效。在 Flutter 2 之前它是可以工作的。
Navigator.pushAndRemoveUntil(
context,
PageRouteBuilder(
transitionDuration: const Duration(milliseconds: 3300),
transitionsBuilder: (BuildContext context,
Animation<double> animation,
Animation<double> secondaryAnimation,
Widget child) {
return _CustomPageTransition(
routeAnimation: animation,
fullscreenDialog: false,
child: child);
},
pageBuilder: (_, __, ___) => LoginScreen(),
),
(route) {
print(route.settings.name);
return false;
});
Run Code Online (Sandbox Code Playgroud)