Flutter/Flutter
Flutter - 현재 페이지 경로 가져오기
hyeonseong
2023. 12. 27. 14:55
사용 목적 - 이동하려는 페이지가 이미 열려 있다면 다시 이동 하기 방지
적용 전 참고 사항
- Route이동을 name으로 함 ( name으로 Route 관리시 Route 스택 관리가 편리해지기 때문에 번거로워도 관리 해주는 것이 좋다. )
현재 열려 있는 페이지의 경로를 가져오는 함수
/// 현재 열려 있는 페이지 경로 정보
String? getCurrentPath() {
String? currentPath;
MyApp.navigatorKey.currentState?.popUntil((route) {
currentPath = route.settings.name;
return true;
});
return currentPath;
}
경로 체크 및 이동
// 함수를 실행해 현재 경로 가져옴.
String? path = getCurrentPath();
// 만약 열려있는 경로가, 이동할 경로와 같을 경우 return;
if (path == RoutePage.first) {
return;
}
// 같지 않을 경우 페이지 이동
RoutePage.move(context, RoutePage.first);
return;