Skip to content

Commit 41f65cd

Browse files
committed
fix: back navigation when no f7Page found
1 parent 800b586 commit 41f65cd

1 file changed

Lines changed: 23 additions & 20 deletions

File tree

src/core/modules/router/back.js

Lines changed: 23 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -706,10 +706,11 @@ function back(...args) {
706706
}
707707

708708
if (!navigateOptions.force && $previousPage.length && !skipMaster) {
709+
const previousPageObj = $previousPage[0].f7Page;
709710
if (
710711
router.params.browserHistory &&
711-
$previousPage[0].f7Page &&
712-
router.history[router.history.length - 2] !== $previousPage[0].f7Page.route.url
712+
previousPageObj &&
713+
router.history[router.history.length - 2] !== previousPageObj.route.url
713714
) {
714715
router.back(
715716
router.history[router.history.length - 2],
@@ -720,26 +721,28 @@ function back(...args) {
720721
);
721722
return router;
722723
}
723-
const previousPageRoute = $previousPage[0].f7Page.route;
724+
if (previousPageObj) {
725+
const previousPageRoute = previousPageObj.route;
724726

725-
processRouteQueue.call(
726-
router,
727-
previousPageRoute,
728-
router.currentRoute,
729-
() => {
730-
loadBack(
731-
router,
732-
{ el: $previousPage },
733-
extend(navigateOptions, {
734-
route: previousPageRoute,
735-
}),
736-
);
737-
},
738-
() => {},
739-
'backward',
740-
);
727+
processRouteQueue.call(
728+
router,
729+
previousPageRoute,
730+
router.currentRoute,
731+
() => {
732+
loadBack(
733+
router,
734+
{ el: $previousPage },
735+
extend(navigateOptions, {
736+
route: previousPageRoute,
737+
}),
738+
);
739+
},
740+
() => {},
741+
'backward',
742+
);
741743

742-
return router;
744+
return router;
745+
}
743746
}
744747

745748
// Navigate URL

0 commit comments

Comments
 (0)