@Pogran

Почему не всегда срабатывает e.target.dataset?

У меня есть вот такой код в render

<a title={title} key={keyVal} onClick={this.onClick} type="button" className={`control-structure pull-right ${className}`}>
				<i data-key={keyVal} data-value={valueVal} data-level={level} className={`fa ${parentClassName}`} aria-hidden="true"/>
			</a>


и вот само событие onClick
onClick(e) {
		e.preventDefault();
		console.log( e.target.dataset.level);
	}


bind на событие я делаю в constructor.

смысл в том что не всегда dataset тянет данные. В 10% случаев бывает промах, т.е консоль выводит undefined, хотя в data-level есть параметры. Как можно решить эту проблему? Или может есть какой альтернативный способ передавать параметры
  • Вопрос задан
  • 1695 просмотров
Решения вопроса 1
maxfarseer
@maxfarseer
https://maxpfrontend.ru, обучаю реакту и компании
У вас клик на ссылке, а data-* на элементе <i>
Когда кликаете по ссылке - e.target = ссылка и у нее нет data-*
Когда в клике попадаете на i = все хорошо.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы