如何为除一个路径以外的所有路径呈现元素

时间:2019-02-07 17:01:37

标签: reactjs react-router

是否可以为除一个路径之外的所有路径呈现一个元素?

例如:

<Link to='/a'>A</Link>
<Link to='/b'>B</Link>
<Link to='/c'>C</Link>
...
<Link to='/noRender'>No Render</Link>
...
<Link to='/z'>Z</Link>

<Route path='all expect /noRender' render={()=> (<p>rendered element</p>)}   />

我正在寻找最简单/最好的解决方案。

1 个答案:

答案 0 :(得分:0)

您是否尝试过在render道具中添加逻辑?

<Link to='/a'>A</Link>
<Link to='/b'>B</Link>
<Link to='/c'>C</Link>
...
<Link to='/noRender'>No Render</Link>
...
<Link to='/z'>Z</Link>

<Route path='/' render={()=> {
  if (this.props.location.pathname === "/noRender") {
    return null;
  } else {
    return <p>rendered element</p>;
  }
}} />