Dart 如何将作用域_模型与Navigator一起使用?
我正在使用Dart 如何将作用域_模型与Navigator一起使用?,dart,flutter,navigation,state,scoped-model,Dart,Flutter,Navigation,State,Scoped Model,我正在使用作用域_模型管理应用程序状态 我有AuthModel用于验证状态。当用户登录时,我在AuthModel中更改屏幕: Widget screen = LoadScreen(); if (loggedIn == true) { screen = HomeScreen; } else if (loggedIn == false) { screen = LoginScreen; } 但我在调用RootPage小部件时出错: Navigator.of(cont
作用域_模型
管理应用程序状态
我有AuthModel
用于验证状态。当用户登录时,我在AuthModel
中更改屏幕
:
Widget screen = LoadScreen();
if (loggedIn == true) {
screen = HomeScreen;
} else if (loggedIn == false) {
screen = LoginScreen;
}
但我在调用RootPage
小部件时出错:
Navigator.of(context).pushReplacementNamed(‘/${model.screen}’);
“Package:flatter/src/widgets/navigator.dart”:失败的断言:行
2106位置12:'_debugLocked':不是真的'
RootPage
是颤振应用程序的第一页,用于显示加载屏幕,直到用户登录或未登录时验证返回:
class RootPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return ScopedModelDescendant<AuthModel>(builder: (context, child, model) {
Navigator.of(context).pushReplacementNamed(‘/${model.screen}’);
});
}
}
class RootPage扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
返回scopedModelSecondant(生成器:(上下文、子对象、模型){
Navigator.of(context.pushReplacementNamed('/${model.screen}');
});
}
}
为什么我会犯这个错误
如果用户正在登录或注销,如何使用scoped_model
进行do导航
谢谢