xxxxxxxxxx
// React Router v6
import { useNavigate, Redirect,Route } from 'react-router-dom';
#method 1
export function GoHome() {
let navigate = useNavigate();
const handleClick = e => {
e.preventDefault();
navigate('/home');
}
return <button onClick={handleClick}>Go to Home</button>
}
#method 2
<Route exact path="/">
{loggedIn ? <Redirect to="/dashboard" /> : <PublicHomePage />}
</Route>
xxxxxxxxxx
import { useNavigate } from 'react-router-dom';
export function About() {
let navigate = useNavigate();
const handleClick = (e) => {
e.preventDefault();
navigate('/home');
}
return <button onClick={handleClick}>Go to Home</button>
}
xxxxxxxxxx
import { Route, Redirect } from 'react-router'
<Route exact path="/" render={() => (
loggedIn ? (
<Redirect to="/dashboard"/>
) : (
<PublicHomePage/>
)
)}/>
xxxxxxxxxx
<Route exact path="/">
{loggedIn ? <Redirect to="/dashboard" /> : <PublicHomePage />}
</Route>
xxxxxxxxxx
<Route exact path="/">
{loggedIn ? <Redirect to="/profile" /> : <HomePage />}
</Route>
xxxxxxxxxx
<Route path="/somePath" element={<Navigate replace to="/" />} />
xxxxxxxxxx
state = { redirect: null };
render() {
if (this.state.redirect) {
return <Redirect to={this.state.redirect} />
}
return(
// Your Code goes here
)
}
// update the redirect
this.setState({ redirect: "/someRoute" });
xxxxxxxxxx
state = { redirect: null };
render() {
if (this.state.redirect) {
return <Redirect to={this.state.redirect} />
}
return(
// Your Code goes here
)
}