2017-01-13 15 views
2

我們的React Native應用程序使用導航實驗導航卡片堆棧。在切換選項卡上(NavigationStateUtils.jumpToIndex),我切換到的選項卡中的場景,卸載。當我切換回原始選項卡時,同樣的場景再次掛載,導致應用程序緩慢。React Native Navigation實驗選項卡開關卸載/ WillMount

我們已經創建了一個例子GitHub庫的位置:https://github.com/zachrnolan/RN-NavigationExperimental-Redux-Example/tree/tabs

是導航試驗的這種行爲部分或我們的導航實現的副作用?

+0

IDK。這應該由一個「場景」來處理。 – Eldelshell

+0

@Eldelshell - 感謝您的回覆。我不確定大多數人是如何處理這個問題的。我們基於[Pepperoni應用套件](https://github.com/futurice/pepperoni-app-kit)開始了我們的應用程序,這就是他們如何通過製表符實現導航實驗。您是否知道其他公共項目按照您的建議處理標籤? – Zach

回答

2

這是因爲您沒有切換標籤頁,您替換了導航狀態。要真正切換標籤,你應該通過tabs狀態NavigationCardStack像這樣的(固定的代碼你品嚐):

<NavigationCardStack 
    navigationState={tabs} 
    onNavigateBack={backAction} 

但是,如果我理解正確的話,你要保留頁面導航,通過拆分導航模式有兩種這樣做並相互嵌套。例如:

  • <TabsContainer> - 控制選項卡導航並呈現Tab1或Tab2(它不應該繪製標題!)。使用state.tabNavigationState
  • <Tab1> - 控制頁面導航,繪製標題並呈現Page1A和Page1B。使用state.pageNavigationState
  • <Tab2> - 呈現Page2(不含例如導航,但它可以包含任何東西),爲什麼您使用的是導航儀的標籤
相關問題