Задать вопрос
pterodaktil
@pterodaktil
js developer

Как повесить обработчик события на часть дочернего компонента?

Есть компонент из готового toolkita (ant design). Появилась необходимость повесить эвент onWheel на этот компонент, который сам по себе не позволяет прокидывать внутрь этот эвент.
Условно, сам компонент
<Component>
  <Header/>
  <Body/>
</Component>

Соответственно, пишу враппер
class Wrapper tratatata {
  onWheel(e) {...}
  render() {
    return (
      <div onWheel={this.onWheel}>
        <Component />
      </div>
    )
  }
}

Соответственно, по эвенту колесика меняются пропсы, которые попадают в <Component />. Но проблема в том, что этот эвент вешается на мой враппер, а мне нужно повесить его только на <Body/> в <Component />. Ловить в onWheel таргет и через DOM проверять, под какой частью (под <Body /> или под <Header />) в момент срабатывания эвента находится мышь ну совсем бред, рефы я расставить не могу. Как быть?
Спасибо
  • Вопрос задан
  • 270 просмотров
Подписаться 2 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
  • Stepik
    Автоматизация тестирования API в Postman для начинающих
    2 недели
    Далее
Пригласить эксперта
Ответы на вопрос 1
@davidnum95
<Component>
  <Header/>
  <Wrapper>
    <Body/>
  </Wrapper>
</Component>

class Wrapper tratatata {
  onWheel(e) {...}
  render() {
    return (
      <div onWheel={this.onWheel}>
        {this.props.children}
      </div>
    )
  }
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы