onClick возвращает SyntheticBaseEvent

#reactjs

Вопрос:

у меня есть этот код

 toggleActive (newDate) {
    this.props.changeData(this.state.dateType, newDate)
}

{this.state.list.map((element, index) => {
      return <div onClick={() => { this.toggleActive() }} className="list-item text-truncate text-center" key={`${element}.${index}`} onClick={() => { this.toggleActive(element) }}>{element}</div>
})}

this.state.list = [0, 1, 2, 3, 4, 5, 6, .. ]

 

но onclick с этим.toggleActive возвращает синтетическое событие, в то время как мне нужна переменная элемента

Ответ №1:

Вы должны передавать событие в своей функции toggleAction (). Что-то вроде этого.

 {this.state.list.map((element, index) => {
  return <div onClick={(e) => { this.toggleActive(e) }} className="list-item text-truncate text-center" key={`${element}.${index}`} onClick={() => { this.toggleActive(element) }}>{element}</div>
})};
 

e.целевое значение должно быть тем значением, которое вы ищете.