Heim > Web-Frontend > js-Tutorial > Wie kann ich Klicks außerhalb einer React-Komponente erkennen?

Wie kann ich Klicks außerhalb einer React-Komponente erkennen?

Linda Hamilton
Freigeben: 2024-12-06 02:44:09
Original
365 Leute haben es durchsucht

How Can I Detect Clicks Outside a React Component?

Klicks außerhalb der Reaktionskomponente erkennen

Das vorgestellte Szenario beinhaltet die Erkennung von Klickereignissen, die außerhalb einer bestimmten Komponente auftreten. Die Methode „closest()“ von jQuery prüft normalerweise, ob das Klickereignisziel das DOM-Element der Komponente als übergeordnetes Element hat, was auf einen Klick innerhalb der Komponente hinweist.

ES6-Implementierung

Die bereitgestellten Die ES6-Lösung nutzt den useOutsideAlerter-Hook, der einen Verweis als Argument akzeptiert. Innerhalb des Hooks wird dem Dokument ein Click-Handler hinzugefügt. Wenn ein Klick erfolgt, wird das Ziel mit dem aktuellen Element der Referenz verglichen. Wenn das Ziel nicht in der Komponente enthalten ist, wird eine Warnung angezeigt.

Die OutsideAlerter-Komponente umschließt untergeordnete Inhalte und wendet den Hook auf die Referenz ihres Containers an. Beim Klicken außerhalb des Containers wird eine Warnung ausgelöst.

Klassenbasierte Implementierung (nach React 16.3)

In dieser Implementierung erweitert die OutsideAlerter-Komponente die Komponente und definiert den Lebenszyklus Methoden. Die Methoden „componentDidMount“ und „componentWillUnmount“ fügen den Click-Handler zum Dokument hinzu bzw. entfernen ihn daraus. Die Methode handleClickOutside prüft auf Klicks außerhalb der Komponente und zeigt bei Bedarf eine Warnung an.

Klassenbasierte Implementierung (vor React 16.3)

Zuvor wird ein etwas anderer Ansatz verwendet Reagieren 16.3. Die Komponente verfügt über eine setWrapperRef-Methode, die die Referenz des Wrappers festlegt. Die Methode handleClickOutside sucht nach Klicks außerhalb der Komponente und zeigt bei Bedarf eine Warnung an.

Unabhängig von der Implementierung ermöglichen diese Lösungen die Erkennung von Klickereignissen außerhalb einer bestimmten React-Komponente und bieten so eine verbesserte Kontrolle über Benutzerinteraktionen.

Das obige ist der detaillierte Inhalt vonWie kann ich Klicks außerhalb einer React-Komponente erkennen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage