蚂蚁设计:如何将this.props.form传递给孩子

时间:2018-11-29 03:03:27

标签: reactjs antd

我有一个表单,每个Form.Item是一个单独的组件,如下所示

  <Form>
  {this.props.children}
  </Form>

由于仅在Form组件中创建了this.props.form,如何在子级中使用它?

1 个答案:

答案 0 :(得分:1)

如果要将this.props.form传递给子级,可以在渲染方法中执行以下操作:

render() {
    const { children } = this.props;

    const childrenWithProps = React.Children.map(children, child =>
      React.cloneElement(child, { someForm: this.props.form })
    );

    return <Form>{childrenWithProps}</Form>
}

然后在子组件中,您可以通过this.props.someForm访问道具。