首页 文章

颤振中的导航器错误(抽屉按钮注销)

提问于
浏览
1

我有一个抽屉,我在我所有的 StatefulWidget 中共享这样

@override
Widget build(BuildContext context) {
return new Scaffold(
key: _scaffoldKey,
drawer: SharedDrawer()
... //More code

在 Drawer 中,我放了一个 LogOut 按钮,将用户重定向到登录页面,清除所有路由器堆栈。

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

但当我尝试再次登录应用程序时出现此错误。

flutter:查找已停用的小部件的祖先是不安全的。此时,窗口小部件元素树的状态不再稳定。要在其 dispose()方法中安全地引用窗口小部件的祖先,请通过在窗口小部件的 didChangeDependencies()方法中调用 inheritFromWidgetOfExactType()来保存对祖先的引用。

我做错了什么?

我如何管理应用程序中的 login/out 或导航器堆栈的东西?

问候!

1 回答

  • 0

    如果您在类中添加了MaterialApp,请将其删除并将其放入runApp

    runApp( new MaterialApp( home: new MyApp() ));

相关问题