Проблема:
У меня есть событие щелчка, которое является частью поведения родительского компонента, но при непосредственном выборе компонента или этот onClick игнорируется, и я не смог понять, почему события имеют приоритет.
Я пробовал несколько уровней e.stopPropagation () и e.preventDefault () как для родительского, так и для дочернего, но безуспешно.
Это для веб-сайта, отображаемого на мобильных устройствах
Это упрощенная версия моей проблемы
<div onClick={()=>console.log('Print Something')}>
<div className='containerStyles' >
<Select autofocus={false}>
</div>
</div>
Если я нажму на заполнение «containerStyles» или за его пределами, консоль что-то напечатает, потому что запускается onClick.
Однако, если я нажимаю на компонент «Выбрать» напрямую, в консоли ничего не печатается.
Что нужно:
Мне нужно руководство по приоритетам событий и как я могу заставить console.log печатать сообщение при нажатии на что-нибудь внутри него. Даже если выбор будет сфокусирован, мне просто нужно убедиться, что родительский onClick также выполняется.
autofocus
, но я сомневаюсь в этом ... Вы говорите, что это упрощенная версия. Возможно, неупрощенная версия прольет свет. - person silencedogood   schedule 16.08.2019stopPropagation()
в какой-то момент для мобильных ? решение для меня в конечном итоге заключалось в том, чтобы использовать onTouchEnd () вместо onClick () и каким-то образом это исправить ... - person Elkdor   schedule 16.08.2019