将数据从React Router传递到组件中

时间:2017-12-12 09:28:40

标签: reactjs react-router

所以我读过将数据传递到路由器中的组件,你需要使用渲染和道具。但是如果我只想传递currentValueindex怎么办?我尝试将currentValue传递到Info组件,但它无效。

render={() => (
  <Info data={currentValue}/>
)

这是我的整个代码段

const row = (currentValue, index, header) => (
<TableRow key={`t-${index}`} selectable={false}>
{
  header.map((headerName, index) => {
    return (
      <TableRowColumn key={`trc-${index}`}>
        {currentValue[headerName.prop]}
      </TableRowColumn>
    )
  })
}
<TableRowColumn>
  <Link to="/info">
    <InfoIcon class="icon-button" />
  </Link>
  <Route
    path="/info"
    render={() => (
      <Info data={currentValue}/>
  )} />

</TableRowColumn>
</TableRow>
);

添加了我的Info组件

class Info extends Component {
constructor(props) {
    super(props);

}

render() {
    return (
        <div>
            {this.props.data}
        </div>

    );
}
}

export default Info;

1 个答案:

答案 0 :(得分:0)

你没有正确解构道具

const row = (currentValue, index, header) =>

应该是

const row = ({ currentValue, index, header }) => (