Моя первая проблема в том, что у меня есть три ссылки в меню. Дом, о и добавить еду. NavLink activeClassName работает как положено, за исключением этого: Дом всегда остается активным, даже когда я перехожу на другие ссылки. На скриншоте я переместился на / о странице, но Home * li остается активным.
Во-вторых, по некоторым причинам радиус границы не работает для этих элементов. Это потому, что они имеют существенное заполнение?
мой код:
import React from "react";
import { NavLink } from "react-router-dom";
const Navbar = (props) => {
return (
<nav>
<ul>
<NavLink to="/" activeClassName="active-navlink">
<li>Home</li>
</NavLink>
<NavLink to="/about" activeClassName="active-navlink">
<li>About</li>
</NavLink>
<NavLink to="/add-food" activeClassName="active-navlink">
<li>Add Food</li>
</NavLink>{" "}
</ul>
</nav>
);
};
export default Navbar;
и мой маршрутизатор, где обрабатываются все ссылки:
<Router>
{" "}
<div className="App">
<Navbar></Navbar>
<Switch>
<Route path="/about" component={About}></Route>
<Route
path="/products/:food"
render={(props) => (
<IndividualProduct {...props}></IndividualProduct>
)}
></Route>
<Route
path="/"
exact
render={(props) => (
<Home
{...props}
groceryList={groceryList}
orderTotal={orderTotal}
setOrderTotal={setOrderTotal}
productsInCart={productsInCart}
updateProductsInCart={updateProductsInCart}
></Home>
)}
></Route>
<Route component={NotFound}></Route>
</Switch>
</div>
</Router>