我有一個包含多個組件的選項卡
const HomePageStack = createStackNavigator();
const HomePageScreen = () => (
<HomePageStack.Navigator initialRouteName='Главная' screenOptions={{ headerShown: true, headerTransparent: true, headerTintColor: '#fff', headerTitleStyle: { color: 'rgba(0, 0, 0, 0)' }, }}>
<HomePageStack.Screen name='Главная' component={Home} options={{ title: "Главная" }} style={{ height: '100%' }} />
<HomePageStack.Screen name='Рецепт' component={Recipe} option={{ title: 'Рецепт' }} style={{ height: '100%' }} />
<HomePageStack.Screen name='Аккаунт' component={Account} option={{ title: 'Аккаунт' }} style={{ height: '100%' }} />
</HomePageStack.Navigator>
)
檢查時,我走這條路(使用帶有資料的 navigation.navigate)
首頁 -> 配方 -> 賬號 -> 配方
回傳按鈕作業正常,直到我第二次切換到配方
當我第二次進入配方并單擊回傳按鈕時,我被發送到主頁,但我想在帳戶中
我沒有自定義或更改后退按鈕的作業方式。
重定向功能(從賬戶到配方 2):
const handleRecipe = (_id) => {
navigation.navigate('Рецепт', { _id })
}
我希望后退按鈕按預期作業并將用戶重定向到帳戶而不是主頁。我懷疑問題出在我的重定向功能上。
uj5u.com熱心網友回復:
navigate彈回堆疊中的較早位置,因為Recipe螢屏已經存在于那里。要Recipe在導航堆疊上推送另一個實體,您可以改用推送操作。所以在Account螢屏上你使用推送操作而不是導航操作來避免回傳到已經存在的Recipe螢屏。有關示例,請參閱https://reactnavigation.org/docs/stack-actions/#push。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/348741.html
標籤:javascript 反应原生 反应导航
上一篇:TypeScript錯誤7053-創建一個使用prop覆寫樣式的自定義React組件,我如何正確告訴TS型別是什么?
