【发布时间】:2021-11-24 05:01:37
【问题描述】:
我使用 NavLink 组件在我的 React 应用程序中设置了活动链接的样式。
我面临的问题如下:
当我点击 Contact 链接时,活动链接样式也会应用到 Home 链接。我只想要 Contact 链接来获得边框底部样式。
我做错了什么?
sn-ps的代码如下:
src/components/Header.js
import React from "react";
import { NavLink } from "react-router-dom";
const Header = () => {
return (
<nav>
<ul>
<li>
<NavLink to="/" activeClassName="selected">
Home
</NavLink>
</li>
<li>
<NavLink to="/about" activeClassName="selected">
About
</NavLink>
</li>
<li>
<NavLink to="/contact" activeClassName="selected">
Contact
</NavLink>
</li>
</ul>
</nav>
);
};
export default Header;
src/App.js
import React from "react";
import About from "./components/About";
import Contact from "./components/Contact";
import Home from "./components/Home";
import Header from "./components/Header";
import { Switch, Route } from "react-router-dom";
const App = () => {
return (
<>
<Header />
<main>
<Switch>
<Route path="/about" exact>
<About />
</Route>
<Route path="/contact" exact>
<Contact />
</Route>
<Route path="/" exact>
<Home />
</Route>
</Switch>
</main>
</>
);
};
export default App;
【问题讨论】:
标签: reactjs react-router