在我的React Native应用中,我有一个堆栈导航器,它的屏幕为 A
, B
和 C
. 画面 A
显示某个用户的信息。我想创建一个 switch user
屏幕上的按钮 A
将加载另一个屏幕的实例 A
但显示的是不同用户的信息。如果我使用 this.props.navigation.navigate('A', {user: user2})
什么都没有发生,因为我已经在屏幕上 A
也就是说,如果你试图导航到同一个屏幕,即使导航参数不同,它也不会这么做。
我想实际加载一个新的屏幕实例的原因是什么?A
而不是仅仅停留在屏幕上 A
并加载新的用户数据是,当用户点击 change user
我想要一个新的屏幕被添加到堆栈时发生的视觉效果。
有谁知道我可以如何解决这个问题?
使用 navigation.replace('A', {user: user2});
来代替堆栈的顶部。下面是世博小吃的演示。https: /snack.expo. iod7NkeEmcz.