所以我有这个屏幕,显示产品的详细信息,它像一个模板,因为只有数据来导航参数的变化,我有这个问题,因为没有重新加载,它工作正常时,回去,并再次安装它,这不是这里的情况,因为我有相关的产品显示在同一屏幕上,我需要一种方法,能够要么重新加载当前路线或更新状态
我检查了控制台。第二次单击时,日志中没有显示任何内容
constructor (props) {
super(props)
this.state = {
product: this.props.route.params.product,
id: this.props.route.params.product.id,
}
}
导航到我在屏幕本身或另一条路线上使用的路线
viewProduct = (product) => {
this.props.navigation.navigate('SingleProduct', { product: product })
}
我在componentDidMount
和UNSAFE_componentWillReceiveProps
中尝试了setState,但结果只在再次单击后显示
3条答案
按热度按时间daupos2t1#
您可以使用以下功能从singleProduction屏幕导航到具有不同参数的同一屏幕。
8hhllhi22#
直接使用
route.params?.product
,并在useEffect
数组中提及更改。ffscu2ro3#
摘自React导航文档