React Router: ¿cómo lograr una navegación similar a una pestaña?

Soy nuevo en React y estoy desarrollando mi primera aplicación usando React. Mi aplicación tenía un componente de pestañas con 4 pestañas, y el contenido de cada pestaña se configuraba como un componente separado. Ahora estoy reemplazando la pestaña con 4 rutas diferentes. Entonces, me deshice de la pestaña y usé react-router para configurar 4 rutas, una para cada uno de los 4 componentes.

Con pestañas, el contenido de una pestaña mantendría su estado al navegar a una pestaña diferente y regresar. Por ejemplo, supongamos que la pestaña tiene una lista y el usuario se ha desplazado al final de la lista. Si el usuario navega a una pestaña diferente y regresa, la lista permanecerá desplazada hacia abajo. Este es el comportamiento deseado para mi aplicación.

Sin embargo, no puedo lograr este comportamiento con las rutas. Noté que cuando navego de una ruta a otra, los componentes se vuelven a instanciar (no solo se vuelven a representar). Puedo decir esto porque se llama al constructor del componente cada vez que se activa la ruta para el componente.

Quiero lograr el comportamiento de tabulación. Sé que para Angular hay una biblioteca UI-Router-Extras que proporciona Deep State Redirect (para navegación tipo tabulación). Funciona muy bien en mi proyecto angular. Pero no puedo encontrar una opción similar para React. He intentado react-router y react-router-component y ambos vuelven a crear una instancia de un componente cuando su ruta se activa.

¿Existe una solución para lograr un comportamiento similar a una pestaña para las rutas en React?

Respuestas a la pregunta(2)

Su respuesta a la pregunta