Существует более крупный компонент упаковки, называемый Sidenav:
const Sidenav = () => (
<SidebarGroup>
<SidebarLink to={routes.example1.path} name="example1" />
<SidebarLink to={routes.example2.path} name="example2" />
</SidebarGroup>
);
И компонент, который меня больше всего беспокоит:
const SidebarLink = ({ to, name }) => (
<li className={styles.sidebarlink}>
<NavLink to={to} activeClassName={styles.active}>{name}</NavLink>
</li>
);
У меня есть 2 проблемы.
1) Обычно to
отлично работает для перенаправления на целевой URL.Однако, когда я переключился на использование NavLink
из ReactStrap против Link
, to
больше не работает - вместо этого необходимо использовать href
, чтобы правильно выполнить действие перехода по клику.Другие примеры онлайн людей, использующих NavLink
, все используют to
- есть ли какая-то зависимость, по которой я скучаю?
2) Я хочу применить activeClassName
к пункту меню, который в данный момент находится на вкладкена или нажимается.Гипотетически, опять же, синтаксис правильный, но он не работает, как ожидалось - в частности, класс .active
не применяется, когда вы нажимаете или перемещаетесь по рассматриваемому пункту меню.Опять же, это ошибка зависимости или что-то еще?withRouter
было предложено в одном месте, но это не имело значения.
Заранее спасибо за любые рекомендации!