Skip to content

Instantly share code, notes, and snippets.

View Folasayo-Samuel's full-sized avatar
:octocat:
I may be slow to respond.

FOLASAYO SAMUEL OLAYEMI Folasayo-Samuel

:octocat:
I may be slow to respond.
View GitHub Profile
@Folasayo-Samuel
Folasayo-Samuel / composing-route-in-react-router-v6.md
Created January 24, 2022 08:43 — forked from mjackson/composing-route-in-react-router-v6.md
Notes on route composition in React Router v6, along with a suggested improvement you can make today to start upgrading

Composing <Route> in React Router v6

Composition of <Route> elements in React Router is changing in v6 from how it worked in v4/5 and in Reach Router. React Router v6 is the successor of both React Router v5 and Reach Router.

This document explains our rationale for making the change as well as a pattern you will want to avoid in v6 and a note on how you can start preparing your v5 app for v6 today.

Background

In React Router v5, we had an example of how you could create a element](https://github.com/remix-run/react-router/blob/320be7afe44249d5c025659bc00c3276a19f0af9/packages/react-router-dom/examples/Auth.js#L50-L52) to restrict access to certain routes on the page. This element was a simple [wrapper around an actual element that made a simple decision: is the user authenticated or not? If so, ren