我正在开发一个使用 React 和 React-router 构建的新项目。我计划以比以前更干净的方式重组我的路线。但是,我不想破坏用户可能拥有的旧书签。
例如,我的新路线可能如下所示:
<Route path="/" component={Layout}>
<Route component={ItemList} path="items/:category" />
<Route component={ItemDetail} path="item/:designCode" />
</Route>
一些示例路线可以是,比如 -/items/electronics,/items/gifts。
但是,我有一个遗留代码库,其中包含此类路由 -/electronic-items、/buy-gifts 等。
有没有一种方法可以创建路由别名,以便能够将这些遗留 URL 映射到新结构化的 URL?
我遇到过something similar in Vue 2.0 ,但我对 react 解决方案特别感兴趣。有什么建议(除了 - 使用重定向或使用 Vue 本身代替 :D)?
最佳答案
我正在使用 react-router-dom v4.3.1,从这个版本开始,可以将多个路径作为数组提供给 Route 组件上的路径属性,例如:
<Route path={["oldListUrl", "newListUrl"]} component={ItemList}/>
我相信这比重定向要好得多。希望这对您有所帮助!
关于reactjs - 我可以使用 React 路由器创建别名路由吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43493153/