繁体   English   中英

在.map()函数中发送道具

[英]Send props in .map() function

我目前的组件中有以下道具

static propTypes = {
    oPurchaseDetails: PropTypes.array,
    updateCart: PropTypes.func.isRequired,
  }

现在我要发送到CartItem组件。 但这在那儿行不通。

          this.props.oPurchaseDetails.map(function(item) {
            return (
               <CartItem oProductItem={item} updateCart={this.props.updateCart} />
             );
          })

如何从.map()函数发送prop函数?

正如@Brian提到的,您的上下文已更改,这就是为什么您无法从映射函数访问this上下文的原因。

由于您已经在使用ES6功能,因此也可以使用数组功能:

this.props.oPurchaseDetails.map(item =>
    <CartItem oProductItem={item} updateCart={this.props.updateCart} />
);

map接受用于设置this上下文的第二个参数:

this.props.oPurchaseDetails.map(function(item) {
    return (
        <CartItem oProductItem={item} updateCart={this.props.updateCart} />
    );
}, this);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM