如何在 React Native 中导航到堆栈上的同一屏幕
How to navigate to a same screen on stack in react native
我在 react-native-navigation 中有一个堆栈。我想导航到之前在堆栈中的屏幕。
但是当我使用 Navigation.push
命令时没有任何反应,屏幕也没有改变。如何在 react-native 上实现这个??
例如我的 stakc 是:[() 中的部分不导航]
主要 -> 地图 -> 商店(-> 地图)
注意:我无法弹屏导航到地图。因为当我使用导航按钮时,地图屏幕可能不在堆栈中。换句话说,有时我从 Main 导航到 Map,然后导航到 Stores,有时我直接从 Main 导航到 Stores。以及我的按钮,它表示要导航到地图屏幕中的商店屏幕。
我终于找到了解决办法。
Navigation.push
或 Navigation.pop
是一个承诺,当由于任何原因无法执行 运行 命令时,该承诺就会出错。
我使用它,当 Navigation.push
在 catch 子句中出错时,我弹出屏幕。
例如:
Navigation.push('Map', {
component: {
id: 'Stroes',
name: 'Stroes',
options: {},
passProps: {},
},
}).catch(e => {
Navigation.pop('Stroes');
});
我在 react-native-navigation 中有一个堆栈。我想导航到之前在堆栈中的屏幕。
但是当我使用 Navigation.push
命令时没有任何反应,屏幕也没有改变。如何在 react-native 上实现这个??
例如我的 stakc 是:[() 中的部分不导航]
主要 -> 地图 -> 商店(-> 地图)
注意:我无法弹屏导航到地图。因为当我使用导航按钮时,地图屏幕可能不在堆栈中。换句话说,有时我从 Main 导航到 Map,然后导航到 Stores,有时我直接从 Main 导航到 Stores。以及我的按钮,它表示要导航到地图屏幕中的商店屏幕。
我终于找到了解决办法。
Navigation.push
或 Navigation.pop
是一个承诺,当由于任何原因无法执行 运行 命令时,该承诺就会出错。
我使用它,当 Navigation.push
在 catch 子句中出错时,我弹出屏幕。
例如:
Navigation.push('Map', {
component: {
id: 'Stroes',
name: 'Stroes',
options: {},
passProps: {},
},
}).catch(e => {
Navigation.pop('Stroes');
});