C react-router
можно использовать элемент Link
, чтобы создавать ссылки которые нативно поддерживаются react router.
Внутри это вызывает this.context.transitionTo(...)
.
Я хочу сделать навигацию, но не по ссылке, а из выпадающего списка, например. Как это будет выглядеть в коде? И что такое this.context
?
Есть такойNavigation
mixin, но хотелось бы обойтись без миксинов.
Вообще есть три подхода к программной маршрутизации внутри компонентов - с использованием high-order компонента withRouter, с компонентом <Route> и с использованием контекста.
Рассмотрим первый вариант:
withRouter будет инжектировать объект history как prop компонента. Это позволяет получить доступ к методам push и replace без необходимости иметь дело с контекстом
Остальные варианты на мой взгляд менее интересны, можешь ознакомиться с ними например здесь