Задать вопрос
@psyhO_octopus

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

Я делаю компонент календаря, специфичный для нашего проекта. В этом календаре выводятся даты на год вперед, т.е. 365 дней. При клике на любую из дат мне нужно получить эту дату. И вопрос в том как это сделать.
Очевидно, что вешать обработчик на каждый элемент на есть хорошо, а хорошо повесить его только на календарь. Но как потом получать даты, не ясно.
  • Вопрос задан
  • 683 просмотра
Подписаться 4 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 3
Запихнуть даты в data-атрибут.
Ответ написан
IonDen
@IonDen
JavaScript developer. IonDen.com
Делается через делегирование событий, вот пример: jsfiddle.net/L29me761
$('.calendar').on('click', '.day', function () {
    var day = $(this).data('date');
    console.log(day);
});
Ответ написан
Laiff
@Laiff
Front-end developer
Реакт вешает на события только в самом документе, потом они диспатчатся по виртуальному дому, то есть обработчик и так будет один и можно создать компонент для этих дат и саму дату передавать через props
Ответ написан
Ваш ответ на вопрос

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

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