React路由器选项卡 - 保持组件安装

问题描述:

我已经使用React路由器创建了选项卡,每个选项卡都有不同的路由。但是,我想通过保持隐藏的标签页安装来维护标签页转换之间的标签状态。我如何实现这一目标?每次路由切换时,React路由器都会重新安装每个组件。React路由器选项卡 - 保持组件安装

已经有人问过这个问题here,但一直没有得到答复

理想我会觉得这使它们击中首次

+1

如果你想维护几个组件的'state',你需要一个没有重新安装的父组件或像'redux'这样的状态管理器。 –

+0

@ Sag1v谢谢!我更愿意跟踪组件内部的组件状态,我真的只想让组件在一个会话中安装在切换标签之间 – kat

+0

我不认为除了好的做法外,还有一种“干净”的方式来实现它和“反应”及其工具的设计模式。也许你可以将它保存在本地存储,但我反对的建议。 'state'是一个属于'class'('React.component'类)实例的内存对象,当你销毁这个类时你销毁了这个对象。正统的做法是将状态提升到一个共同的家长,或通过像'redux'这样的国家经理在外部保存 –

我后不显示安装选项卡的解决方案我必须做更多的挖掘来确认这个实际工作,但通过阅读React Router文档,我发现this关于Route组件。使用component道具会在每次路线更改时重新装载组件。但是使用其他渲染方法,您可能能够实现您正在寻找的内容。我会去render,但children也可以工作?