Question: I would like to create routes that support query string.  

When i say support i mean, passing it to the next route some how.  

For example:  

given this route: `domain/home?lang=eng`  

and when moving to route `domain/about` i want it to keep the Query String and display `domain/about?lang=eng`.  

I was sure there's a built in functionality for this but after reading the docs and a lot of search on the net, i couldn't find an elegant solution.  

I'm using `react-router@3.0.0` and `react-router-redux@4.0.7`

Answer: 
For react-router 4.x, try

`const { history }
history.push('/about' + history.location.search)`

To access `this.props.history`, make sure you have wrapped the component with `withRouter` HOC

`import { withRouter } from 'react-router-dom'
...
export default withRouter(component)`

refer <https://github.com/ReactTraining/react-router/issues/2185>
You will have to "forward" query param on each page transition - bothering and you can easily forgot to...

Instead, I would do this.

* read stored/persisted `lang` preference. `localStorage` is good candidate here. Fallback to default language, when no preference is found
* share `lang` via context, so that each and every component can read this value.
* create some button (or whatever), which would modify this value

Since you are using `redux`, I would pull `redux-persist` to persist this preference across page reloads.