将传递道具传递到新的URL /路由

时间:2019-02-06 21:29:15

标签: reactjs url routes

我对React还是很陌生,无法弄清楚如何做一些相当简单的事情(我想)。我想将道具传递到从图表元素(必须是此元素)中单击的新URL。

我在页面上有一个图表,已为其分配了点击事件。

 <div id='plotlyContainer' className='dashboard-border-container'>
        { 
          toDrilldown &&
          <Redirect to={{
              pathname: '/portfolio/drilldown',
              state: {
                filters: this.props.filters,
                category: this.props.category,
                chartType: this.props.chartType
              }
            }}
          />
        }
        <Plot
          data={this.props.data}
          layout={this.props.layout}
          useResizeHandler={true}
          style={{width: '100%', height: '100%'}}
          onClick={this.navigateToDrillDownPage.bind(this)}
        />
      </div>

点击事件:

navigateToDrillDownPage() {
    this.setState({toDrilldown: true})
 }

如何将过滤器,类别和chartType属性传递到新URL(drillDownURL)?

1 个答案:

答案 0 :(得分:1)

我找到了解决方案,所以我认为它可以帮助其他人。直到我将组件包装在(portfolio / drilldown)处,重定向状态对象才定义为:

export default withRouter(PortDrillDownContainer)

包装后,对象的状态具有我期望的所有值。