본문 바로가기
Flutter/Flutter FAQ

Flutter 플러터 모든 라우트 제거하기, Flutter remove all routes

by 베타코드 2023. 5. 10.
반응형

질문


로그인 경로로 이동하고 Navigator에서 다른 모든 경로를 제거하는 로그아웃 버튼을 개발하고 싶습니다. 문서에는 RoutePredicate를 만드는 방법이나 모든 경로를 제거하는 함수가 없는 것 같습니다.


답변


저는 다음 코드를 사용하여이를 수행 할 수있었습니다 :

Navigator.of(context)
    .pushNamedAndRemoveUntil('/login', (Route<dynamic> route) => false);

이곳의 비밀은 항상 false를 반환하는 RoutePredicate를 사용하는 것입니다. (Route<dynamic> route) => false. 이 상황에서는 새로운 /login 경로를 제외한 모든 경로를 제거합니다.

반응형

댓글