使用浏览器后退按钮导航时,如何将对象作为道具传递给先前的反应组件(反应,反应路由器)

时间:2019-05-16 19:20:55

标签: javascript reactjs react-router

我正在使用反应路由器在我的应用中进行导航。

要在使用Link进行导航时将一些数据从当前组件传递到其他组件,我们使用:

this.props.history.push('/other-page', { id: 7, color: 'green', .... }))

当单击浏览器后退按钮时,如何将数据(对象)从当前组件传递到上一个组件?

PS : 我看到了一些建议使用查询字符串传递数据的解决方案 但我不想使用它,因为我必须传递具有许多属性的大对象

那么有可能使用react-router?我们会在某些外部组件中使用state来做到这一点,还是使用Redux存储来共享数据?

谢谢。

1 个答案:

答案 0 :(得分:1)

如果可以在不同组件中使用某些数据,则最好使用诸如reducer之类的存储。那就更好了,然后通过查询参数或回调传递数据。您可以使用react-redux或从类组件迁移到功能组件,并使用useReducer挂钩。

如果您需要一些示例,请告诉我。