我是React的初学者,但遇到了问题:
这是我在render函数中的代码
let contnt = null;
if(this.state.showPersons)
{
contnt = (
<div >
{this.state.persons.map((ppl,index)=>{
return <Person name={ppl.name}
age={ppl.age}
changed={this.nameChange} // THE FOCUS POINT
click={()=>this.deletePerson(index)}
key={index}></Person>
}) }
</div>
)
}
上面的代码可以很好地使用函数nameChange读取事件,而无需显式将其作为参数发送。但是我也想将索引发送到我的nameChange函数,但是如果我将changed定义为:
changed={()=>this.nameChange(event, index)}
给出错误消息,表明未找到事件...
我如何将事件以及参数传递给渲染函数中的箭头函数定义?
我知道这似乎是一个非常基本的问题,但是倾向于无序开始的初学者经常会遇到类似这样的简单基本问题。
我在那之后一直跟随着一个教程,找到了它,因此认为值得分享。。
并且事件可以在箭头函数的第一个括号中发送,如下所示:
changed={(event)=>this.nameChange(event, index)}
然后可以在nameChange函数中读取事件以及索引。