javascript - 如何使用 map 将 parent 的 Prop 传递给 child

标签 javascript reactjs jsx react-props

我有一个父组件,它使用 map 来渲染带有一些数据的子组件。我需要将数据作为 Prop 传递给子组件,但是当我传递它们时,我无法在子组件中访问它们。 this.props.children prop 具有我需要的 props,但是有没有更好的方法将它们传递给子组件?

父组件

class Home extends Component {

  renderArtCards = (artCardArray) => {
    return (artCardArray.map((artCard, index) => {
      return (
        <div key={index}>
          <ArtCard>
            title={artCard.title}
            image={artCard.image}
            description={artCard.description}
            price={artCard.price}
          </ArtCard>
        </div>
      )
    })
    )
  }

  render() {
    return (
      <Fragment>
        <div className="row no-gutters justify-content-end pageTitleRow">
          <div className="pageTitle">Home</div>
        </div>
        <div className="artCardsRow">
          <Masonry
            className={'masonryStyle'}
            options={masonryOptions}>
            {this.renderArtCards(artCards)}
          </Masonry>
        </div>

      </Fragment>
    )
  }
}

子组件

class ArtCard extends Component {
    render() {
        console.log(this.props.children)
        return (
            <Fragment>
                <Card className="artCardBody">
                    <CardMedia
                        className="artCardMedia"
                        image={this.props.image}
                        title={this.props.title}
                    />
                    <CardContent>
                        <div className="row artCardTitleRow">
                            <div className="artCardTitle">{this.props.title}</div>
                            <div className="artCardPrice">Rs.{this.props.price}</div>
                        </div>
                        <div className="text-muted">{this.props.description}</div>
                    </CardContent>
                </Card>
            </Fragment>
        )
    }
}

我需要使用 this.props.xxxx 访问子组件中的 props

最佳答案

Prop 位于 <Name ... > 内部 。您目前没有向 <ArtCard> 传递任何 Prop ,只是将文本作为其子项。

关于javascript - 如何使用 map 将 parent 的 Prop 传递给 child ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55816220/

相关文章:

javascript - 表单不返回 true 并且不会发送到 PHP

reactjs - 如何浅层测试包含在 memo 和 withStyles 中的 React 组件?

css - Styled-components 多个伪元素

reactjs - 如何删除 redux 存储数组中的最后一个元素?

reactjs - Material-UI Outlined 输入标签对齐不正确

javascript - 是否有将 React Elements javascript 代码转换为 JSX 的工具

javascript - 如何在服务器端 React 中访问 JSX 组件的 DOM 事件处理程序

javascript - 为什么以下代码不返回所有数组元素的总和?

javascript - 如何在多行中均匀地平衡文本?

javascript - 在 Div 背景中加载图像时设置超时