如何将参数从Route(react-router-dom)传递到渲染功能

时间:2018-10-04 16:33:48

标签: node.js reactjs react-router

可以执行以下操作:

<Route exact path="/activate/:token" render={this.activateAccount} />

然后使用相同的组件

activateAccount(token) {
    console.log(token);
    return null;
}

如何传递令牌?

我的逻辑正确吗?稍微了解一下MERN,我现在感到困惑的是如何在后端和前端之间移动,例如,在这里,当我生成激活帐户URL时,我会有类似的

http://localhost:5006/api/activate/8d7f5b25befb70045b5cb36893fa0f7688b85504

现在我的NodeJS / Express在5006端口上运行,而我的ReactJS在3006端口上,不确定此处的逻辑是什么,在这种情况下,我可以在NodeJS端完成所有操作,但不确定以后如何重定向到/ login /在前端。

谢谢!

1 个答案:

答案 0 :(得分:0)

activateAccount的参数将不是token

<Route exact path="/activate/:token" render={this.activateAccount} />

the reference所述,Route render函数接收route props

  

所有三个渲染方法都将通过相同的三个路径道具

     
      
  • 匹配
  •   
  • 位置
  •   
  • 历史
  •   

否则,将不可能在路由组件中使用它们。

是:

activateAccount(props) {
    console.log(props.match.token);
    return null;
}