Flutter-断言失败:'removedRoute.overlayEntries.isNotEmpty':不正确

时间:2019-12-04 08:59:36

标签: flutter dart navigation

我有一个redirectMain()方法,该方法应该清空Navigator堆栈并重定向到主屏幕。

它看起来像这样:

Future<dynamic> redirectMain() {
  return GlobalService.navigatorKey.currentState.pushNamedAndRemoveUntil("/", (_) => false);
}

我从一个answer那里得到了“在应用栏上轻按删除后退按钮”

我使用以下命令初始化导航键:

static final GlobalKey<NavigatorState> navigatorKey = GlobalKey<NavigatorState>();

问题是:仅在Navigator堆栈中只有一条路由时,它才起作用。如果还有更多内容(在两个屏幕或更多屏幕之间导航),我将收到以下异常:

  

'package:flutter / src / widgets / navigator.dart':断言失败:行   1910年位置14:'removedRoute.overlayEntries.isNotEmpty':不正确。

我不能使用pushReplacementNamed,因为它不会完全清空Navigator堆栈。

0 个答案:

没有答案