记录一个初学时出现的错误。
使用了注册路由的方式进行了页面注册
在myApp中的 MaterialApp中进行注册
return MaterialApp(
*** 无关代码***
//注册路由
routes: <String, WidgetBuilder>{
//登录相关路由
SplashScreen.routeName: (BuildContext context) => SplashScreen(),
SignInPage.routeName: (BuildContext context) => SignInPage(),
//主页面路由
MainNavBarPage.routeName:(BuildContext context) => MainNavBarPage (),
},
initialRoute: SPLASH_SCREEN,
);
后面又使用了 MaterialApp包裹了其他Widget
class MainNavBarPage extends StatelessWidget {
static const routeName = MAIN_NAV_BAR;
@override
Widget build(BuildContext context) {
return MaterialApp(
home: FluidNavBarDemo(),
);
}
}
由于再次使用的MaterialApp已经替换了之前的,所以之前注册的路由已经全部失效。
因此出现以下错误
Could not find a generator for route ** in the _WidgetsAppState.
删除第二个MaterialApp即可
class MainNavBarPage extends StatelessWidget {
static const routeName = MAIN_NAV_BAR;
@override
Widget build(BuildContext context) {
return FluidNavBarDemo();
}
}
参考https://stackoverflow.com/questions/49132299/could-not-find-a-generator-for-route
网友评论