Я перевожу свое приложение с React Router v3 на v4.Хотя я меняю Link
компоненты на NavLink
компоненты, я заметил, что activeClassName
опора больше не добавляется.Компонент, содержащий NavLink
s, не является прямым потомком компонента Route
, поэтому компонент не выполняет повторную визуализацию.Когда я декорирую компонент, используя withRouter
, компонент повторно рендерится и activeClassName
реквизиты добавляются.Это намеренно?Или я что-то пропустил?
Проще говоря:
class Container extends Component {
render() {
return (
<div>
<NavLink to='/path/to/page' activeClassName='active'>Click Me</NavLink>
</div>
);
}
}
export default Container;
.. не работает, если я не экспортирую это как:
export default withRouter(Container);