如何使用React Router在Route Handler上获取参数

How do you get the params on a Route Handler with React Router

本文关键字:Handler 获取 参数 Route 何使用 React Router      更新时间:2023-09-26

我正试图将一条路由重定向到另一条路由,并传递一些参数,比如:

var UnAuthenticatedClass = React.creatClass({
  statics: {
    willTransitionTo: function (transition) {
      if(!isLoggedIn()) {
        transition.redirect('signin', {
          originalTransition: transition
        });
    }
  }
...

我的签约路线:

var SignIn = React.createClass({
  componentDidMount: function() {
    console.log(this.getParams().originalTransition); // returns undefined
  },
...

不管我把什么作为params,这个.getParams()都会返回一个空对象。有什么建议吗?

this.getParams()获取由Route定义的path属性定义的参数;你不能只是传递你想要的任何东西,并期望它们显示在结果处理程序的params中。你需要把这些数据藏在其他地方(例如,与路由器无关),然后在另一边获取。