React Router 3,与查询参数完全匹配

时间:2016-12-26 17:17:35

标签: reactjs react-router

在React Router 3中,如何与包含查询参数的路由完全匹配?

像这样,

<Route path="about?qs1=:qs&qs2=:qs2" component={About} />

1 个答案:

答案 0 :(得分:2)

在这种意义上,查询参数不是路线的一部分。您需要在组件内部检查它们,例如:

class About extends React.Component {
  render() {
    return(
      <div>
        {this.props.location.query.qs1 ? 'Correct route!' : 'Invalid route!'}
      </div>
    );
  }
}

您还可以检查componentDidMount中的查询参数,并将您的用户重定向到其他路线(例如404)。 Read more about Route Matching in the official docs