在_CustomTabViewState中找不到路由路由设置( "chat" , null) 的生成器



我在routes.dart中定义了一组路由,这些路由在main.dart文件中链接如下。

@override
Widget build(BuildContext context) {
return MultiProvider(
providers: [
StreamProvider<ConnectivityStatus>(
create: (_) => ConnectionService().connectionStatusController.stream,
),
...
ChangeNotifierProvider<AuthNotifier>(
create: (_) => AuthNotifier(),
),
],
child: MaterialApp(
debugShowCheckedModeBanner: false,
routes: Routes.routes,
home: SplashScreen(),
),
);
}

Routes.dart文件:

class Routes {
Routes._();
static const chat = '/chat';
static final routes = <String, WidgetBuilder>{
chat: (BuildContext ctx) => CircleChat(),
};
}

我有一个按钮,它正在触发上述路线,但抛出错误。

FlatButton(
Navigator.of(context).pushReplacementNamed(Routes.chat);
)

错误-

在处理手势时抛出了以下断言:在中找不到路由RouteSettings("chat",null(的生成器_自定义选项卡查看状态。按以下顺序搜索路线的生成器:

  1. 对于"/"路线;构建器";如果不是null,则使用属性
  2. 否则;"路线";如果表中有路由条目,则使用该表
  3. 否则,将调用onGenerateRoute。它应该为未由"处理的任何有效路由返回一个非空值;构建器";以及";路线">
  4. 最后,如果所有其他操作都失败,则调用UnknownRoute。很遗憾,未设置onUnknownRoute

当抛出异常时,这是堆栈:#0 _自定义选项卡视图状态_未知路线。

p.S.-对于类似的错误,我经历了这个和这个,但我没有找到解释,这就是为什么当所有语义都正确时,它不起作用

使用CuptinoTabBar的CuptinoTabView中的路由onGenerateRoutes属性,并在此处传递您的路由或onGenerateRoades参数。

相关内容

最新更新