如何在几个应用容器之间导航



如何在应用容器之间导航?

我在应用程序中检测到正确的堆栈.js

const stack = User.isAuthorized() ? authStack : unauthStack;

用户输入登录名和密码后,他需要将堆栈从unauthStack.SignIn切换到authStack.List

const unauthStack = createAppContainer(createStackNavigator({
SignIn: { screen: SignIn },
ForgotPassword: { screen: ForgotPassword },
}));
const authStack = createAppContainer(createBottomTabNavigator({
List: { screen: GeneralStack },
Add: { screen: NewEventStack },
}));

我试图谷歌它,但找不到任何工作示例。并看到一些完全重新加载应用程序的信息可能是内存泄漏或类似原因的原因......

那么正确的方法是什么呢?

您不应该接近多个容器,而应该创建 2 个堆栈并添加一个 switchNavigator,如果它已登录,则相应地显示。 请参阅以下示例:

const navigation = createAppContainer(
createSwitchNavigator(
{
App: HomeStack, // these are after login pages
Auth: AuthStack,// these are before login pages
},
{
initialRouteName: isToken?'App':'Auth', //checking if token exists
},
),
);

请检查代码,如果有任何疑问,请询问。

希望对你有帮助

相关内容

  • 没有找到相关文章

最新更新