我正在尝试将此 React 应用程序部署在在线托管服务器上的子目录中,并且我正在使用 react-router。我只需更改 package.json 中的主页并在 Router 组件中添加“basename”参数即可使用 react-router:
<BrowserRouter basename="/react/lyricsearch">
使用reach-router,我看到一篇文章说你可以做类似的事情:
<Router basepath="/react/petadoption">
但它不起作用,页面无法加载。设置它以使用到达路由器在该 url 路径上工作的方法是什么?
render() {
return (
<div>
<header>
<Link to="/">Adopt Me!</Link>
<Link to="/search-params">
<span aria-label="search" role="img">
Search
</span>
</Link>
</header>
<Provider value={this.state}>
<Router basepath="/react/petadoption">
<Results path="/" />
<Details path="/details/:id" />
<SearchParams path="/search-params" />
</Router>
</Provider>
</div>
);
}