2017-03-19 26 views
1

導航到不同頁面時,ion-navbar將後退按鈕置於pop()前一頁。有沒有辦法改變這種行爲,所以它使用setRoot()而不是pop(),或者我將不得不使用ion-toolbar,而是手動添加我自己的自定義後退按鈕?Force Ionic 2 Navbar使用setRoot()而不是pop()

(作爲一個方面說明,我想用setRoot()是因爲它是一個簡單的方法來迫使以前的頁面,而不是刷新使用緩存的版本。使用生命週期掛鉤像ionViewWillEnter似乎沒有解決這個問題的原因所以如果還有其他解決方法,我可以試試這個)

+0

你想保持狀態嗎? – Aravind

+0

@Aravind我想在點擊後退按鈕時刷新上一頁,而不是使用緩存版本。 'setRoot(previousPageName)'實現了這一點,但'ion-navbar'默認使用'pop(previousPageName)'。 – Martin

+1

您可以在ion-navbar 中使用** hideBackButton **類。然後手動添加自定義後退按鈕。 – Math10

回答

1

當你使用setRoot()時,你將不會有任何後退按鈕。如果你需要添加它,你可以做手動。

例如的setRoot()

this.navCtrl.setRoot(EventSchedulePage); 

關於生命週期掛鉤,則可以使用ionViewDidEnter。它運行時的頁面已全面進入,現在是活動頁面。無論是第一次加載還是緩存頁面,此事件都會觸發。

您可以參考it here,請參閱Lifecycle Events標題。