React导航。有没有办法在StackNavigator中,在一个现有的屏幕实例之上再添加一个该屏幕的实例?

问题描述 投票:0回答:1

在我的React Native应用中,我有一个堆栈导航器,它的屏幕为 A, BC. 画面 A 显示某个用户的信息。我想创建一个 switch user 屏幕上的按钮 A 将加载另一个屏幕的实例 A但显示的是不同用户的信息。如果我使用 this.props.navigation.navigate('A', {user: user2}) 什么都没有发生,因为我已经在屏幕上 A也就是说,如果你试图导航到同一个屏幕,即使导航参数不同,它也不会这么做。

我想实际加载一个新的屏幕实例的原因是什么?A 而不是仅仅停留在屏幕上 A 并加载新的用户数据是,当用户点击 change user我想要一个新的屏幕被添加到堆栈时发生的视觉效果。

有谁知道我可以如何解决这个问题?

reactjs react-native react-navigation react-navigation-stack stack-navigator
1个回答
1
投票

使用 navigation.replace('A', {user: user2}); 来代替堆栈的顶部。下面是世博小吃的演示。https: /snack.expo. iod7NkeEmcz.

© www.soinside.com 2019 - 2024. All rights reserved.