Автоматическая реакция stopPropagation и preventDefault - PullRequest
4 голосов
/ 17 июня 2020

При использовании текущих версий react-dom и @material-ui мне нужно stopPropagation и / или preventDefault в нескольких местах. Я никогда не сталкивался с проблемой вроде в этой статье , и я думаю, этого не может произойти из-за того, как работает Material-UI: открытые диалоговые окна и модальные окна AFAIK сначала получают событие, поэтому они всегда закрываются , при нажатии снаружи.

  • Правильно ли я с этим предположением?

  • Если да, то есть ли еще случаи, когда я не должен stopPropagation и / или preventDefault?

В любом случае, я устал усложнять все обработчики событий этим шаблоном. Я хотел бы автоматизировать это, возможно ли?

Обновить

Я не привожу пример, где stopPropagation необходимо, поскольку это возможно ' t help (мы все знаем, что это необходимо иногда , не так ли?). Это случалось со мной несколько раз, например, нажатие кнопки закрытия в MUI Popover перенаправляло щелчок на кнопку, которая открывала всплывающее окно (чтобы оно оставалось открытым).

Обратите внимание, что вопрос состоит из трех частей . Если нет автоматизированного решения (готов поспорить, это может сделать сам React), мне больше всего любопытны случаи, когда подавление не должно происходить при использовании MUI.

...