Je me demandais si je pouvais changer les éléments de la barre de navigation sur la base de l'URL sans avoir 2 composants de barre de navigation différents. Ma barre de navigation comporte 3 liens sur le côté gauche et 3 liens sur le côté droit, mais je veux afficher chaque côté une fois.
ex : quand je suis sur /page-1, /page-2, /page-3
Je veux montrer seulement le côté gauche et quand je suis sur /page-4, /page-5, /page-6
pour montrer le côté droit. J'ai essayé quelque chose avec match.params
mais pas de chance. Comment puis-je y parvenir ? Désolé pour mon anglais
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>
)
}