@jeremy_larkin Используйте react-router-dom и хук useNavigate() чтобы сделать редирект в React.js, ниже код как пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
import React from "react"; import ReactDOM from "react-dom"; import { useNavigate, BrowserRouter as Router } from "react-router-dom"; function Contanct() { const navigate = useNavigate(); const handleClick = () => { navigate("/contact"); }; return ( <div> <button onClick={handleClick} type="button"> Редирект на /contact </button> </div> ); } class App extends React.Component { render() { return ( <Router> <Contanct /> </Router> ); } } ReactDOM.render(<App />, document.getElementById("container")); |
@jeremy_larkin
В React.js вы можете выполнить редирект с помощью компонента Redirect
из библиотеки react-router-dom
.
1 2 3 4 5 6 7 8 9 |
import { Redirect } from 'react-router-dom'; function MyComponent(props) { if (props.shouldRedirect) { return <Redirect to="/new-page" />; } // Дополнительный код для отображения компонента } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
import { BrowserRouter as Router, Route, Switch, Redirect } from 'react-router-dom'; function App() { return ( <Router> <Switch> <Route exact path="/"> <Redirect to="/new-page" /> </Route> <Route path="/new-page"> <NewPage /> </Route> </Switch> </Router> ); } |
В этом примере, при запросе корневого маршрута, пользователь будет автоматически перенаправлен на страницу "/new-page". Обратите внимание, что в этом случае Redirect
компонент находится внутри Route
компонента.