Javascript 在.map函数中使用react道具

Javascript 在.map函数中使用react道具,javascript,reactjs,ecmascript-6,Javascript,Reactjs,Ecmascript 6,假设我的一个组件上有以下渲染函数。 我从父元素传递了一个changeTidprop函数 家长: <RequestsList data={this.state.data} changeTid={this.changeTid} /> 子项: <RequestsList data={this.state.data} changeTid={this.changeTid} /> (我正在使用ES6课程) render(){ var RequestNodes=this.pro

假设我的一个组件上有以下渲染函数。 我从父元素传递了一个
changeTid
prop函数

家长:

<RequestsList data={this.state.data} changeTid={this.changeTid} />

子项:

<RequestsList data={this.state.data} changeTid={this.changeTid} />
(我正在使用ES6课程)

render(){
var RequestNodes=this.props.data.map(函数(请求){
返回(
);
});
返回(
{RequestNodes}
);
}

我不能在我的地图函数中使用
this.props.changeTid
,因为
未引用我不想引用的内容。我在哪里绑定它,以便访问我的
道具

您可以通过第二个参数为回调设置

var RequestNodes = this.props.data.map(function(request) {
   /// ...
}, this);
或者您可以使用没有自己的
this
,并且
this
在它内部指的是封闭的上下文

var RequestNodes = this.props.data.map((request) => {
       /// ...
});

如果您使用的是ES6,您可以使用不绑定自己的
this

var RequestNodes = this.props.data.map(request => {
  return (
    <Request 
        key={request.TID} 
        changeTid={this.props.changeTid}
    />
  );
});
var RequestNodes=this.props.data.map(请求=>{
返回(
);
});