У меня есть компонент ReactJS, который я хочу вести по-разному при одном и двойном щелчке.
Я прочитал этот вопрос: onClick работает, но onDoubleClick игнорируется в React компонент
<Component
onClick={this.onSingleClick}
onDoubleClick={this.onDoubleClick} />
И я попробовал это сам, и кажется, что вы не можете зарегистрировать как одиночный, так и двойной щелчок на компоненте ReactJS.
Я не уверен в хорошем решении этой проблемы. Я не хочу использовать таймер, потому что на моей странице будет 8 таких отдельных компонентов.
Было бы хорошим решением иметь еще один внутренний компонент внутри этого, чтобы иметь дело с ситуацией двойного щелчка?
Редактировать:
Я попробовал этот подход, но он не работает в функции рендеринга.
render (
let props = {};
if (doubleClick) {
props.onDoubleClick = function
} else {
props.onClick = function
}
<Component
{...props} />
);