I'm new in flutter and I trying to build a navigation graph using the package go_router.
I have three screen, list, detail, favorites. You can navigate to detail screen from list screen and favorite screen.
If I build the graph this way, I'm "duplicate" the detail screen GoRoute.
Does anyone know another better option?
final router = GoRouter(
routes: [
GoRoute(
path: '/',
name: AppScreens.list.name,
builder: (context, state) => const ScreenList(),
routes: [
GoRoute(
path: 'detail/:id_character',
name: AppScreens.characterDetailFromList.name,
builder: (context, state) {
final int characterId = int.parse(state.pathParameters['id_character']!);
return ScreenCharacterDetail(idCharacter: characterId);
}
),
GoRoute(
path: 'favorites',
name: AppScreens.charactersFavorite.name,
builder: (context, state) => const ScreenCharactersFavorites(),
routes: [
GoRoute(
path: 'detail_from_favorites/:id_character',
name: AppScreens.characterDetailFromFavorites.name,
builder: (context, state) {
final int characterId = int.parse(state.pathParameters['id_character']!);
return ScreenCharacterDetail(idCharacter: characterId);
}
)
]
),
]
),
]
);