I\'m trying out React-Router (v4) and I\'m having issues starting off the Nav to have one of the Link
\'s be active
. If I click on any of the
<Link>
no longer has the activeClassName
or activeStyle
properties. In react-router v4 you have to use <NavLink> if you want to do conditional styling:
const Router = () => (
<BrowserRouter>
<div>
<Nav>
<NavLink exact={true} activeClassName='is-active' to='/'>Home</NavLink>
<NavLink activeClassName='is-active' to='/about'>About</NavLink>
</Nav>
<Match pattern='/' exactly component={Home} />
<Match pattern='/about' exactly component={About} />
<Miss component={NoMatch} />
</div>
</BrowserRouter>
)
I added an exact property to the home <NavLink>
, I'm fairly sure that without it, the home link would always be active since /
would match /about
and any other pages you have.