如何重定向用户并在组件之间发送数据?

时间:2019-06-20 10:15:34

标签: reactjs

我想在用户单击按钮后推送用户并将数据发送到目标页面  在app.js中,我有了路由 我还有另外两个组件/projectsmenu/projects中,我想在用户单击按钮X之后将用户推送到/menu,并将该按钮的ID从/projects发送到/menu

project.js

 handleClick = index => {
          const selectedItem = this.state.data[index];

          console.log(selectedItem.id)
          }

app.js

 <Route exact path="/" component={First} />
          <ProtectedRoute logged_in={this.state.logged_in}  path="/Projects" render={()=><Projects username={this.state.username}/>} />
          <ProtectedRoute logged_in={this.state.logged_in}  path="/menu" render={()=><MenuH username={this.state.username}/>} />
          <ProtectedRoute logged_in={this.state.logged_in}  path ="/createProject" render={()=><CreateP username={this.state.username} id={this.state.id}/>}  />
          <ProtectedRoute logged_in={this.state.logged_in}  path ="/connect" render={()=><Newacount username={this.state.username} id={this.state.id}/>} />
          <ProtectedRoute logged_in={this.state.logged_in}  path ="/profile" render={()=><Profile user={this.state.user}/>} />

1 个答案:

答案 0 :(得分:0)

您可以使用历史记录道具

重定向和发送数据
this.props.history.push({path: '/menu', state: {id: selectedItem.id}});

,然后通过this.props.location.state.id

访问菜单组件中的数据