Para tener un código más limpio y que luego sea mas fácil su mantenimiento y evolución yo hice lo siguiente:
// Cree un componente llamado NavItem que acepta las propiedades to, children y activeStyle
const NavItem = ({ to, children, activeStyle }) => {
return (
// Use la etiqueta NavLink y le pasé las propiedades to y className
<NavLink
to={to}
className={({ isActive }) => (isActive ? activeStyle : undefined)}
>
{children}
</NavLink>
);
};
Y luego:
<li>
<NavItem to="/clothes" activeStyle={activeStyle}>
Clothes
</NavItem>
</li>
<li>
<NavItem to="/electronics" activeStyle={activeStyle}>
Electronics
</NavItem>
</li>
<li>
<NavItem to="/fornitures" activeStyle={activeStyle}>
Fornitures
</NavItem>
</li>
<li>
<NavItem to="/toys" activeStyle={activeStyle}>
Toys
</NavItem>
</li>
<li>
<NavItem to="/others" activeStyle={activeStyle}>
Others
</NavItem>
</li>
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?