反应activeClassName =“ active”在服务器上不起作用。在我的本地计算机上正常运行。
Navbar.js
<ul className="sidebar-elements">
<li><NavLink to="/" exact activeClassName="active">Dashboard</NavLink></li>
<li><NavLink exact to="/about" activeClassName="active">About Us</NavLink></li>
<li><NavLink exact to="/contact" activeClassName="active">Contact Us</NavLink></li>
</ul>
Routes.js
<Switch>
<Route exact path="/" component={Dashboard} />
<Route exact path="/about" component={About} />
<Route exact path="/contact" component={Contact} />
</Switch>
App.js
<div className ="App ">
<div className="contentSection">
<Navbar/>
<main id="content">
<Routes />
</main>
</div>
</div>
index.js
ReactDOM.render(<Router><App /></Router>, document.getElementById('root'));
在我的本地计算机上输出
服务器上的输出
答案 0 :(得分:0)
问题可能是如果您的应用程序作为生产中的子目录(如http://yourdomain.com/your-application)提供的。 在这种情况下,您应该使用路由器的basename属性。