April 2020
Intermediate to advanced
716 pages
18h 55m
English
The code in the file defines the PrivateRoute component, as shown in the auth flow example at https://reacttraining.com/react-router/web/example/auth-workflow, which can be found in the React Router documentation. It will allow us to declare protected routes for the frontend to restrict view access based on user auth.
mern-skeleton/client/auth/PrivateRoute.js:
import React, { Component } from 'react'import { Route, Redirect } from 'react-router-dom'import auth from './auth-helper'const PrivateRoute = ({ component: Component, ...rest }) => ( <Route {...rest} render={props => ( auth.isAuthenticated() ? ( <Component {...props}/> ) : ( <Redirect to={{ pathname: '/signin', state: { from: props.location } }}/> ) )}/> ...