Flutter error - Route builders must never return null


Following is my Flutter's main.dart code

return MaterialApp(
	debugShowCheckedModeBanner: false,
	theme: AppTheme.getThemeFromThemeMode(value.themeMode()),
	initialRoute: '/',
	routes: {
	  '/': (context) => HomeScreen(customAppTheme: customAppTheme),
});

this is resulting in following error


════════ Exception caught by widgets library ═══════════════════════════════════
The following assertion was thrown building Builder(dirty):
The builder for route "/" returned null.

Route builders must never return null.
The relevant error-causing widget was
MaterialApp
lib/main.dart:40
When the exception was thrown, this was the stack
#0      MaterialRouteTransitionMixin.buildPage.<anonymous closure>
package:flutter/…/material/page.dart:111
#1      MaterialRouteTransitionMixin.buildPage
package:flutter/…/material/page.dart:117
#2      _ModalScopeState.build.<anonymous closure>
package:flutter/…/widgets/routes.dart:820
#3      Builder.build
package:flutter/…/widgets/basic.dart:7183
#4      StatelessElement.build
package:flutter/…/widgets/framework.dart:4701
...

1 Answer

4 years ago by

You can't pass constructor parameters when using the named routes. Change the code to the following

return MaterialApp(
	debugShowCheckedModeBanner: false,
	theme: AppTheme.getThemeFromThemeMode(value.themeMode()),
	initialRoute: '/',
	routes: {
	  '/': (context) => HomeScreen(),
});
4 years ago by Karthik Divi