Реагировать - получить доступ к дочерним путям напрямую, используя BrowserRouter?
Я использую BrowserRouter
как React Router Dom, и пока я пытаюсь получить доступ к определенному пути, скажем http://localhost:3000/recoverPassword
, URL не может быть разрешен. Я не могу пойти на HashRouter
поскольку клиент не так впечатлен, чтобы увидеть #
в URL. Я натолкнулся на причину и обнаружил, что именно так мы можем исправить это с помощью веб-пакета. Но я не использую веб-пакет в своем проекте. Поэтому я хотел бы знать, есть ли альтернативный подход без использования каких-либо модулей модуля?
import { BrowserRouter as Router, Route } from "react-router-dom";
class App extends Component {
render() {
return (
<Router>
<div>
<Route exact path="/" component={SignIn} />
<Route exact path="/recoverPassword" component={RecoverPassword} />
</div>
</Router>
);
}
}
Замечания:
Локально это работает без дополнительных настроек, но когда я развертываю в Amazon AWS, он не может определить путь.
Обновление № 1
Мы можем настроить ведро s3 для устранения ошибки, указав в документе об ошибке также index.html
как этот ответ объясняет. create-react-app
оставшийся хеш-трюк сделает с BrowserRouter
,
Но моя команда разместила сборку для производства в EC2, в настоящее время у меня нет к ней доступа, нужно посмотреть, как это можно настроить там. Между тем было бы замечательно, если бы кто-то мог поделиться какой-либо информацией в качестве ответа относительно того, как это сделать в EC2.
Благодарю.