controller function Null safety

Route controller(
  1. RouteSettings settings
)

controller function with switch statement to control page route flow

Implementation

Route<dynamic> controller(RouteSettings settings) {
  switch (settings.name) {
    case loadingPage:
      return MaterialPageRoute(builder: (context) => LoadingPage(_sa, _api));
    case loginPage:
      return MaterialPageRoute(builder: (context) => LoginPage(_sa, _api));
    case mapPage:
      return MaterialPageRoute(builder: (context) => Map(_sa, _api));
    case walletPage:
      return MaterialPageRoute(builder: (context) => WalletPage(_api));
    case ridesPage:
      return MaterialPageRoute(builder: (context) => RidesPage(_api));
    case registrationPage:
      return MaterialPageRoute(builder: (context) => RegistrationPage(_api));
    default:
      throw ('this route name does not exist');
  }
}