我将BrowserRouter
用作React Router Dom,而当我尝试访问特定路径(例如http://localhost:3000/recoverPassword
)时,无法解析URL。我无法申请HashRouter
,因为客户端对URL中的#
印象深刻。我发现了原因,发现this是我们如何使用Web Pack进行纠正的方法。但是我在项目中不使用Web Pack。所以我想知道是否有不使用任何模块捆绑器的替代方法?
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
来解决错误,如answer所述。 create-react-app
哈希技巧将用BrowserRouter
完成其余操作。
但是我的团队已将构建托管在EC2中进行生产,但我没有 当前访问它,需要看看它如何 配置在那里。同时,如果有人可以分享,那就太好了 任何有关如何在EC2中进行处理的信息。
谢谢。