我刚刚从路由器v2迁移到v4,但遇到了问题。我不知道怎么了。
所以我有一个主要组件来基本上加载页面
<HashRouter>
<Route
path="/"
render={(props) => <App pageOptions={options} routeProps={props} />}
/>
</HashRouter>, appNode);
然后在App
里面有一个Switch
<Switch>
<Route
exact
path="/"
render={() =>
<Main
options={this.props.pageOptions}
{...this.state}
/>
}
/>
<Route
path="/page/:id(/?)"
render={() =>
<Content
options={this.props.pageOptions}
{...this.state}
/>
}
/>
</Switch>
我进入页面并且根Route可以正常工作,但是当我尝试访问该URL /page/345
时,它仍然显示Main
组件而不是Content
组件。
我在这里想念什么?
答案 0 :(得分:0)
使用hashRouter是否有任何特定原因。 如果将它替换为BrowserRouter,它应该可以工作。
更多信息:https://medium.com/@djoepramono/react-router-4-gotchas-2ecd1282de65