diff --git a/packages/core/src/components/back-button/back-button.tsx b/packages/core/src/components/back-button/back-button.tsx index c2dd1eab79..19ef796604 100644 --- a/packages/core/src/components/back-button/back-button.tsx +++ b/packages/core/src/components/back-button/back-button.tsx @@ -50,7 +50,7 @@ export class BackButton { ev.preventDefault(); nav.pop(); } else if (this.defaultHref) { - openURL(this.defaultHref, ev); + openURL(this.defaultHref, ev, true); } } diff --git a/packages/core/src/components/router/router.tsx b/packages/core/src/components/router/router.tsx index 44883b4648..f899687f46 100644 --- a/packages/core/src/components/router/router.tsx +++ b/packages/core/src/components/router/router.tsx @@ -69,8 +69,8 @@ export class Router { } @Method() - pushURL(url: string) { - this.writePath(parsePath(url), false); + pushURL(url: string, isPop = false) { + this.writePath(parsePath(url), isPop); return this.writeNavStateRoot(); } diff --git a/packages/core/src/utils/theme.ts b/packages/core/src/utils/theme.ts index a92741c096..adb80cb8fc 100644 --- a/packages/core/src/utils/theme.ts +++ b/packages/core/src/utils/theme.ts @@ -62,12 +62,12 @@ export function getClassMap(classes: string | undefined): CssClassMap { return map; } -export function openURL(url: string, ev: Event) { +export function openURL(url: string, ev: Event, isPop = false) { if (url && url.indexOf('://') === -1) { const router = document.querySelector('ion-router'); if (router) { ev && ev.preventDefault(); - return router.componentOnReady().then(() => router.pushURL(url)); + return router.componentOnReady().then(() => router.pushURL(url, isPop)); } } return Promise.resolve();