How to pass props to a child component via React Router
This short tutorial explains how to pass props to a child component via React Router
There are many solutions to pass props to a child component via React Router, and some you’ll find are outdated.
The most simple ever is adding the props to the Route wrapper component:
const Index = props => <h1>{props.route.something}</h1>
var routes = <Route path="/" something={'here'} component={Index} />
But in this way you need to modify how you access props, via this.props.route.*
instead than the usual this.props
, which might or might not be acceptable.
A way to fix this is to use:
const Index = props => (
<h1>{props.something}</h1>
)
<Route path="/" render={() => <Index something={'here'} />} />
→ Get my React Beginner's Handbook
→ I wrote 17 books to help you become a better developer:
- C Handbook
- Command Line Handbook
- CSS Handbook
- Express Handbook
- Git Cheat Sheet
- Go Handbook
- HTML Handbook
- JS Handbook
- Laravel Handbook
- Next.js Handbook
- Node.js Handbook
- PHP Handbook
- Python Handbook
- React Handbook
- SQL Handbook
- Svelte Handbook
- Swift Handbook
Also, JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025