<BrowserRouter>
<Switch>
<Route path="/catalog" component={ CatalogPage } exact />
<Route path="/products" component={ ProductPage } exact />
<Route path="/products/:id" component={ ItemPage } exact />
</Switch>
</BrowserRouter>
<Link to="products/:id" style={{ textDecoration: "none", color: "inherit" }}>
function ProductItem({ link }) { ....
<Link to={ `/products/${ link }` }
<ProductItem
link="1" // static
link={ json.id } // dynamic
/>