React Router v4 NavLink не работает, если компонент контейнера не является дочернимили завернутый с помощью роутера - PullRequest
0 голосов
/ 28 января 2019

Я перевожу свое приложение с 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);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...