为了账号安全,请及时绑定邮箱和手机立即绑定

React Navigation V5 InitalRouteName 不适用于条件渲染

React Navigation V5 InitalRouteName 不适用于条件渲染

万千封印 2023-12-14 15:49:27
如果用户的信息尚不存在,我想将用户带到个人资料页面。但在使用 jwt 条件渲染时,initialRouteName 不起作用。也许我缺少更好的方法。有没有人有什么建议?function ExploreNavigator() {  const jwt = useSelector(state => state.session.jwt);  const { firstName } = useSelector(state => state.user);  return (    <Stack.Navigator      headerMode="screen"      initialRouteName={firstName ? "Listings" : "Profile"}      screenOptions={{        cardStyle: {          backgroundColor: 'white',        },      }}>      {jwt ? (        <>          <Stack.Screen            name="Listings"            component={ListingsScreen}            options={{ title: 'My Studios' }}          />          <Stack.Screen            name="Onboarding"            component={OnboardingScreen}            options={{              headerShown: false,            }}          />          <Stack.Screen            name="Profile"            component={ProfileScreen}            options={{              headerShown: false,            }}          />        </>      ) : (        <>          <Stack.Screen            name="Sign Up"            component={SignUpScreen}            options={{              headerShown: false,            }}          />          <Stack.Screen            name="Login"            component={LoginScreen}            options={{              headerShown: false,            }}          />        </>      )}    </Stack.Navigator>  );}
查看完整描述

2 回答

?
GCT1015

TA贡献1827条经验 获得超4个赞

您的代码有错误

初始路由名称={名字?"Listings": "Profile"} 如果仔细观察,名字和问号运算符之间没有空格。代码应该是这样的

初始路由名称={名字?“列表”:“个人资料”}


查看完整回答
反对 回复 2023-12-14
?
浮云间

TA贡献1829条经验 获得超4个赞

不幸的是我没有对我的项目进行硬刷新。嗯。效果很好。谢谢您的帮助。



查看完整回答
反对 回复 2023-12-14
  • 2 回答
  • 0 关注
  • 111 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信