질문&답변
context.go 가 실행이 안될때
void main() { runApp( _App(), ); } class _App extends StatelessWidget { const _App({Key? key}) : super(key: key); @override Widget build(BuildContext context) { final GoRouter _router = GoRouter( initialLocation: '/', routes: [ GoRoute( path: '/', builder: (_, state) => const HomeScreen(), routes: [ GoRoute( path: 'one', builder: (_, state) => const OneScreen(), routes: [ GoRoute( path: 'two', builder: (_, state) => const TwoScreen(), routes: [ GoRoute( path: 'three', builder: (_, state) => const ThreeScreen(), ), ], ), ], ), ], ), ], ); return MaterialApp.router( routeInformationProvider: _router.routeInformationProvider, routeInformationParser: _router.routeInformationParser, routerDelegate: _router.routerDelegate, ); } } 늦었지만 저도 동일한 문제를 겪어서 답글 남겨요. 아래 답글주신것도 해보았지만 동일하게 안되었고, 되는방법은 찾았는데 왜 되는지는 모르겠어요. 해결 방법은 패키지는 4.2.2 이고, _router를 build 안에다가 정의하면 잘 작동합니다. (위 코드 참고) 대신 안되는 부분이 있는데 go('three') 에서 뒤로 돌아올 때, 화면은 3>2>1 로 순서대로 잘 빠져나오는데, defaultLayout에서 보여주는 title: router.location은 변경이 되지않고 one/two/three 그대로 나옵니다. 감사합니다.
- 좋아요수
- 0
- 댓글수
- 2
- 조회수
- 433





