如何在ReactJs的箭头函数内传递事件和其他参数

问题描述 投票:0回答:1

我是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)}

给出错误消息,表明未找到事件...

我如何将事件以及参数传递给渲染函数中的箭头函数定义?

我知道这似乎是一个非常基本的问题,但是倾向于无序开始的初学者经常会遇到类似这样的简单基本问题。

javascript reactjs events javascript-events arrow-functions
1个回答
0
投票

我在那之后一直跟随着一个教程,找到了它,因此认为值得分享。。

并且事件可以在箭头函数的第一个括号中发送,如下所示:

changed={(event)=>this.nameChange(event, index)}

然后可以在nameChange函数中读取事件以及索引。

© www.soinside.com 2019 - 2024. All rights reserved.