I was wondering if I can change the navbar items based on URL without having 2 different navbar components. My navbar has 3 links on the left side and 3 links on the right but I want to display each side once a time.
eg: when I'm on /page-1, /page-2, /page-3
I want to show only the left side and when I'm on /page-4, /page-5, /page-6
to show the right side. I tried something with match.params
but no luck. How can I achieve that? Sorry for my english
Layout.js
...
export default class Layout extends Component {
render() {
return (
<div>
<Route path="/:name" component={Navbar} />
<SomeContentComponent />
</div>
);
}
}
Navbar.js
const Navbar = ({ match }) => {
const page = match.params.name
return (
<div>
<ul className="left">
<li><Link to="/page-1">Page 1</Link></li>
<li><Link to="/page-2">Page 2</Link></li>
<li><Link to="/page-3">Page 3</Link></li>
</ul>
<ul className="right">
<li><Link to="/page-4">Page 4</Link></li>
<li><Link to="/page-5">Page 5</Link></li>
<li><Link to="/page-6">Page 6</Link></li>
</ul>
</div>
)
}