reactjs useParams()函数在从地址url的路由获取ID时返回undefined

8iwquhpp  于 2023-05-28  发布在  React
关注(0)|答案(1)|浏览(109)

我有一个URL /:id/prices的路由
const { id } = useParams()返回id: undefined

const Component = () => {
const { id } = useParams()
console.log(id)

如何从该路由获取id
以下是路由的结构:

<BrowserRouter>
  <Routes>
    <Route path="/" element={<Listings />} />
    <Route path="/:id/prices" element={<PricesHistory />} />
  </Routes>
</BrowserRouter>

通过点击下面的按钮,我应该导航到相应的提到的组件

<a href={"/" + id + "/prices"}>
  See history &rarr;
</a>
lkaoscv7

lkaoscv71#

你需要使用一个Link组件,常规的锚标签不能与react-router一起工作,而且它们不适合单页应用程序,这是react的主要目标:

import { Link } from "react-router-dom";

 <Link to={`/${id}/prices`}>Your Name</Link>

相关问题