#javascript #reactjs #react-router #back-button
#javascript #reactjs #react-маршрутизатор #кнопка возврата
Вопрос:
У меня есть одностраничное приложение с react amp; react-router. К сожалению, некоторые страницы по-прежнему не являются частью этого приложения с опаленной страницей и являются «обычными веб-сайтами». Поэтому я отступил с помощью маршрутизатора, чтобы перенаправить на эти обычные ссылки. Мой запасной вариант выглядит так:
<Switch>
[...]
<Route exact path="/my_path">
<MyComponent />
</Route>
//Fallback:
<Route component={(props) => {
let location = useLocation();
window.location.assign(location.pathname);
return null;
}}/>
</Switch>
После выхода из приложения с опаленной страницей браузеры открывают ссылку, как и предполагалось.
Проблема: я не могу нажать кнопку возврата браузера, когда я нахожусь на этой новой странице. Я имею в виду, что я могу щелкнуть по ней, и URL-адрес в моем браузере меняется, но он не перезагружает страницу. Итак, в конце концов, я нахожусь на этой «внешней» странице, но браузер показывает URL-адрес моего одностраничного приложения. Как я могу заставить браузер перезагрузить эту страницу, чтобы снова войти в мое одностраничное приложение?
Заранее спасибо, Николай