簡體   English   中英

如何在 React Navigation 中禁用向后滑動選項或彈出路線?

[英]How to Disable back swipe option or pop a route in React Navigation?

我有一個登錄頁面(StackNavigator)和一個標簽頁(TabNavigator)。

export const Root = StackNavigator({
  LoginScreen: {screen: Login},
  Tabs: {screen: Tabs}
},
  {
  initialRouteName: 'LoginScreen'
  }
)

用戶登錄后,用戶仍有可能通過向后滑動返回(到登錄頁面)。 從路由堆棧彈出登錄路由或禁用后滑動選項的方法是什么。 謝謝

調度重置操作而不是正常的導航調度。 這樣,您可以在登錄后將堆棧設置為您想要的狀態,並從堆棧中刪除您的LoginScreen

示例相關答案:

從 React Navigation (v6) 處理它的官方方法是根據isSignedIn條件定義導航器中的屏幕,以便一旦將isSignedIn變量設置為true ,導航器中將不存在登錄屏幕。

例如:

<Stack.Navigator>
  {isSignedIn ? (
    <Stack.Screen name="Tabs" component={TabsScreen} />
  ) : (
    <Stack.Screen name="Login" component={LoginScreen} />
  )}
</Stack.Navigator>

有關詳細信息,請參閱身份驗證流程部分。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM