Для обработки событий по клику для динамических элементов React можно воспользоваться делегированием событий. Нужно добавить обработчик события на один из родительских элементов, который не изменяется динамически, и отслеживать событие на дочерних элементах.
Например, если у вас есть список элементов, которые создаются динамически, и вам необходимо обрабатывать событие клика на каждом из них, вы можете сделать следующее:
1. Создайте обработчик события для элементов списка:
handleItemClick = (event) => { console.log('Кликнули по элементу:', event.target.id); }
2. Добавьте обработчик на родительский элемент, который не изменяется (например, на сам список элементов):
<ul onClick={this.handleItemClick}> {dynamicItems.map(item => ( <li key={item.id} id={item.id}>{item.name}</li> ))} </ul>
Теперь при клике на любой из элементов списка будет вызываться обработчик handleItemClick
, и в консоли будет выведен id элемента, по которому был совершен клик.
Помните, что в React рекомендуется использовать делегирование событий вместо добавления обработчиков напрямую к каждому элементу, так как это может улучшить производительность при работе с динамическими элементами.