React Native 中的模态 window 和反应导航
Modal window in React Native with react-navigation
我在 React Native 中使用 react-navigation
,我想在启动时确定用户是否登录,如果 he/she 已经登录,我想打开一个模式window(全屏)。
如何做到最好?我在 react-navigation 文档中找不到任何有条件显示屏幕的内容。
React 有一个模态组件,您可以使用它来显示全屏模态。请参阅此处的文档:https://facebook.github.io/react-native/docs/modal.html
要在用户登录时有条件地显示它,您可以使用 'visible' 属性。
例如。将其放在您的应用加载到的屏幕上:
<Modal
animationType={"slide"}
transparent={false}
visible={this.state.userIsLoggedIn}
>
你可以这样做:
const ModalNavigator = StackNavigator(
{
ModalScreen: { screen: ModalScreen },
},
{
mode: "modal",
headerMode: "none",
},
)
你看,你需要从导航中更改 mode
。
const RootStack = StackNavigator(
{
Main: {
screen: MainStack,
},
MyModal: {
screen: ModalScreen,
},
},
{
mode: 'modal',
headerMode: 'none',
}
);
截图:
参考文献:
我在 React Native 中使用 react-navigation
,我想在启动时确定用户是否登录,如果 he/she 已经登录,我想打开一个模式window(全屏)。
如何做到最好?我在 react-navigation 文档中找不到任何有条件显示屏幕的内容。
React 有一个模态组件,您可以使用它来显示全屏模态。请参阅此处的文档:https://facebook.github.io/react-native/docs/modal.html
要在用户登录时有条件地显示它,您可以使用 'visible' 属性。 例如。将其放在您的应用加载到的屏幕上:
<Modal
animationType={"slide"}
transparent={false}
visible={this.state.userIsLoggedIn}
>
你可以这样做:
const ModalNavigator = StackNavigator(
{
ModalScreen: { screen: ModalScreen },
},
{
mode: "modal",
headerMode: "none",
},
)
你看,你需要从导航中更改 mode
。
const RootStack = StackNavigator(
{
Main: {
screen: MainStack,
},
MyModal: {
screen: ModalScreen,
},
},
{
mode: 'modal',
headerMode: 'none',
}
);
截图:
参考文献: