пытается создать элемент ссылки (<a>
элемент) с href
. Почему я использую href
, а не меняю history
? потому что я хочу, чтобы опция открывалась в новой вкладке в браузере.
Проблема в том, что у меня есть кнопка внутри элемента, и когда вы нажимаете на нее, она сразу же вызывает href
, прежде чем даже получить stopProppagation
или preventDefault
внутри обработчика onClick
кнопки. Это как 2 разных типа событий ...
примерно так:
...
const onButtonClick = (event) => {
event.stopPropagation();
event.nativeEvent.stopImmediatePropagation();
event.preventDefault();
if (clickDisabled) return;
if (!onClick) return;
onClick(event);
}
return (
<a href={someHref}>
<button onClick={onButtonClick}>open menu</button>
</a>
)
Есть идеи?