Javascript 如何避免路线碰撞?

Javascript 如何避免路线碰撞?,javascript,reactjs,react-router,jsx,Javascript,Reactjs,React Router,Jsx,我想在用户访问/Products/1时呈现 我想在用户访问/Products/new时呈现 我的路由器看起来是这样的: <Route exact path="/Products/new" component={CreateProduct} /> <Route exact path="/Products/:productId" component={Product} /> 使用函数呈现路线: const renderProduct = props => prop

我想在用户访问
/Products/1
时呈现

我想在用户访问
/Products/new
时呈现

我的路由器看起来是这样的:

<Route exact path="/Products/new" component={CreateProduct} />
<Route exact path="/Products/:productId" component={Product} />
使用函数呈现
路线:

const renderProduct = props =>
  props.match.params.productId === 'new'
    ? null
    : <Product {...props} />;
const renderProduct=props=>
props.match.params.productId===“新建”
? 无效的
: ;
使用


它将尝试找到第一个匹配项。 因此,
/Products/new
将匹配第一条路线并跳过第二条路线。
/Products/1
将匹配第二个。

这正是我需要的。我猜我的google foo不太符合标准。当计时器允许时会接受你使用react路由器v4,对吗?它比以前的版本更容易理解。您可以阅读以下内容:
const renderProduct = props =>
  props.match.params.productId === 'new'
    ? null
    : <Product {...props} />;
<Switch>
  <Route exact path="/Products/new" component={CreateProduct} />
  <Route exact path="/Products/:productId" component={Product} />
</Switch>