Mam element o nazwie Dialog
, w którym dołączam detektor zdarzeń po kliknięciu myszą na obiekcie window
.Jak sprawdzić, czy użytkownik kliknął wewnątrz bieżącego komponentu?
componentDidMount() {
document.addEventListener('click', this.handleClick);
}
componentWillUnmount() {
document.removeEventListener('click', this.handleClick);
}
jaki sposób można wykryć (w funkcji handleClick
) czy kliknięcie został zwolniony wewnątrz komponentu lub zewnętrznym? Zauważ, że to okno dialogowe zawiera różne elementy i komponenty potomne.
mogę znaleźć na to pytanie o wykryciu kliknięcia na zewnątrz elementu. http://stackoverflow.com/questions/32553158/detect-click-outside-react-component Myślę, że możesz obejść i wykryć kliknięcia wewnątrz komponentu. – Jackowski
@Jackowski dzięki, spróbuję tego. Przyjęta odpowiedź (sam autor) stwierdza, że miał problem z dołączeniem wywołania zwrotnego do treści dokumentu: "Ponieważ wywołanie React następuje przed wywołaniem procedury obsługi treści dokumentu, element nie został wykryty jako" wewnątrz "drzewa." Każdy pomysł, dlaczego? – Matthew