【发布时间】:2021-08-03 05:10:53
【问题描述】:
我正在将 API 前端从 jQuery 重构为 React,为了保持网站向后兼容,我必须保持当前 URL 格式匹配:www.site.com/#parameter,它在路径名中有一个前导标签.当尝试路由路径名以匹配此格式时,问题就出现了,React Router 无法识别路由或渲染相应的组件。当尝试 console.log 的 useParams 对象时,它返回 undefined。
TLDR;如何访问以“#”开头的 URL 参数?
import {Switch, Route} from "react-router-dom"
import Home from "./Home"
function Routes() {
return (
<div>
<Switch>
<Route exact path={`/#:parameter`}><Home/></Route>
</Switch>
</div>
)
}
export default Routes;
【问题讨论】:
-
path="/:parameter" -
标签是标记为链接到社交媒体搜索的关键字。不是所有以井号开头的都是标签。
-
@Quentin 很确定 hashrouter 正在使用
#/格式,这与 OP 正在寻找的格式不同
标签: javascript jquery reactjs react-router react-router-dom