Quantcast
Channel: Ionic Forum - Latest topics
Viewing all articles
Browse latest Browse all 70440

How force Ionic 4 back button to always goto a certain Page from selected pages

$
0
0

@peterjc wrote:

I am porting my Ionic 3 app to Ionic 4. I have switched over to using the new routing, with lazy loaded modules etc.

I have a side menu where I can select my main pages from any other page.

However, whenever I click the back button from one of the main feature pages, I always want to go back to the main home page (and not back to perhaps another feature page in the current route stack)

The click handler code in the Ionic 4 version for the side menu selection is as follows (pageItem.pageRoutePath contains the new route)

      public openPage(pageItem: AppPageItem): void {
		try {
		  this.logger.debug(`openPage ${pageItem.title}`);
		  
          // Try to force homepage to be where the back button takes us (but this doesn't seem to work)
		  this.navController.navigateRoot(Constants.vals.pageRoutePaths.home, { replaceUrl: true });
		  if (pageItem.pageRoutePath != Constants.vals.pageRoutePaths.home) {
			this.navController.navigateForward(pageItem.pageRoutePath);
		  }
		} catch (error) {
		  this.logger.error(`openPage ${error}`);
		}
	  }

The { replaceUrl: true } parameter was me experimenting trying to get this to work, but it did not make any difference.

In Ionic 3 I could do what I am describing as follows…

this.nav.setRoot(HomePage);
  if (pageItem.page != HomePage) {
    this.nav.push(pageItem.page); 
  }  

I don’t want this from every page, just my feature pages, eg some of the feature pages navigate to "details: pages, and here I do want the back button to just return back to the page it was navigated from, ie the default behavior. Also, I do have one feature page where I do open it as a details fro another feature page, so in this case i do want the detail behaviour of the back button.

So, I just really want to switch the behaviour when the page is opened from this side menu.

Does anyone know how I can achieve this in Ionic 4?

Thanks in advance for any help

Posts: 1

Participants: 1

Read full topic


Viewing all articles
Browse latest Browse all 70440

Trending Articles