这可以通过内置的React Native Modal组件轻松实现,其中visibility
道具可以从Redux传递状态。
给出多个React Navigation modal screens,当Redux状态改变时,如何取消特定的模态。
在React Navigation docs节目中,使用props.navigation.goBack()
可以在点击按钮时关闭模态。 React Navigation API docs状态表明可以将navigation key传递到goBack()
以便从特定屏幕返回。
给出2个模态屏幕,如下所示:
const RootStack = createStackNavigator(
{
Main: {
screen: MainStack,
},
LockModal: {
screen: LockModal,
},
OfflineModal: {
screen: OfflineModal,
},
},
{
mode: 'modal',
headerMode: 'none',
}
);
...以及Redux isLocked
和isOffline
中的2个布尔属性。
我假设我可以通过调用props.navigation.goBack('OfflineModal')
来关闭离线模式,但是我应该在代码中的哪个地方监听对isOffline
的更改并调用navigation.goBack('OfflineModal')
?
我要把这全部弄错吗?