Ich habe ein sidenav mit einer Reihe von Basketball-Teams. Also würde ich gerne etwas anderes für jedes Team zeigen, wenn einer von ihnen darüber schwebt. Außerdem verwende ich Reactjs, also wenn ich eine Variable haben könnte, die ich zu einer anderen Komponente weitergeben könnte, die fantastisch wäre.Wie kann ich auf einen Hover-Status in reactjs zugreifen?
Antwort
React-Komponenten zeigen alle standardmäßigen Javascript-Mausereignisse in ihrer Top-Level-Schnittstelle an. Natürlich können Sie immer noch :hover
in Ihrem CSS verwenden, und das mag für einige Ihrer Bedürfnisse ausreichen, aber für die fortgeschritteneren Verhaltensweisen, die durch einen Hover ausgelöst werden, müssen Sie das Javascript verwenden. Um Hover-Interaktionen zu verwalten, sollten Sie also onMouseEnter
und onMouseLeave
verwenden. Sie legen sie dann an Handler in Ihrer Komponente wie folgt:
<ReactComponent
onMouseEnter={this.someHandler}
onMouseLeave={this.someOtherHandler}
/>
Sie werden dann eine Kombination von Staat/Requisiten verwenden, um den Zustand geändert oder Eigenschaften bis zu Ihrem Kind passieren Komponenten reagieren.
okay, ich denke, das wird funktionieren. Lass es mich testen. Wie kann ich diese Variable an eine andere/nicht verbundene Komponente übergeben? – Username
Das wird eigentlich knifflig, dafür sorgt React nicht gerade. In der Architektur einer Web-App wird dies in die globale, übergreifende Kommunikationsmethodik gewählt. Viele Menschen würden sich für eine Event-Bus-Lösung entscheiden, bei der ein globaler Event-Manager Ereignisse in verschiedenen Komponenten posten und empfangen würde. Diese Ereignisnachrichten enthalten die Daten, die Sie als Argumente übergeben möchten. Dies schlägt Facebook in seinen Dokumenten zum Thema vor: https://facebook.github.io/react/tips/communicate-between-components.html – stolli
ReactJs definiert die folgenden synthetischen Ereignisse für Mausereignisse:
onClick onContextMenu onDoubleClick onDrag onDragEnd onDragEnter onDragExit
onDragLeave onDragOver onDragStart onDrop onMouseDown onMouseEnter onMouseLeave
onMouseMove onMouseOut onMouseOver onMouseUp
Wie Sie gibt es keine Hover-Ereignis sehen können, da Browser nativ ein Hover-Ereignis nicht definieren.
Sie möchten Handler für onMouseEnter und onMouseLeave für Hover-Verhalten hinzufügen.
- 1. ReactJS: Wie kann man auf Refs der Kindkomponente zugreifen?
- 2. ReactJs kann verschachtelte Route nicht zugreifen
- 3. Reactjs mit Parse.com asynchroner Ladefehler? Kann nicht auf Objekt zugreifen
- 4. Wie kann ich auf einen Connector/eine Datenbank zugreifen?
- 5. Wie kann ich mit Powershell auf einen erholsamen Webservice zugreifen?
- 6. Wie kann ich programmgesteuert auf einen IPTV-Server zugreifen?
- 7. Wie kann ich mit Perl auf einen Remote-Host zugreifen?
- 8. Wie kann ich auf einen Button eines Fragments zugreifen?
- 9. Wie kann ich auf einen C-Zeiger von Fortran zugreifen?
- 10. SSIS: Wie kann ich auf einen Verbindungsserver zugreifen?
- 11. Wie kann ich auf Iframe-Elternelemente zugreifen?
- 12. Wie kann ich auf neo4j-Ergebniseigenschaften zugreifen?
- 13. Wie kann ich auf Kommandozeilenparameter zugreifen?
- 14. Reactjs: Kann ich auf eine Ereignisbehandlungsroutine der zustandslosen Komponente von ref in zugreifen?
- 15. Wie kann ich auf OpenSearchServer-Datenbankfelder zugreifen?
- 16. Ich kann nicht auf einen Objektfehler bei externer Klassenbibliothek zugreifen
- 17. Kann ich von einem Iterator auf einen Container zugreifen?
- 18. Wie kann ich auf verschachtelte Zellenarrays in MATLAB zugreifen?
- 19. Wie kann ich auf Veranstaltungsortbilder in der Here API zugreifen
- 20. Wie kann ich auf den aktuellen Anwendungsordner in UWP zugreifen?
- 21. Wie kann ich auf Listenwerte in einem WFFM-Listenfeld zugreifen?
- 22. Wie kann ich auf meine Knotendaten in ejs zugreifen
- 23. Wie kann ich auf druckerspezifische Schriftarten in .NET zugreifen?
- 24. Wie kann ich auf das Mikrofon in JS zugreifen?
- 25. Wie kann ich auf die Kommandozeile in Adobe Air zugreifen?
- 26. Wie kann ich auf Mausereignisse in Outlook zugreifen?
- 27. Wie kann ich auf das Feld in Javascript-Klasse zugreifen
- 28. Wie kann ich auf das Kotlin-Begleitobjekt in Java zugreifen?
- 29. Wie kann ich in AngularJS auf Cookies zugreifen?
- 30. Wie kann ich auf welche Umgebung in CodeIgniter zugreifen?
möglich Duplikat [eine Hoverschaltfläche in react.js] (http://stackoverflow.com/questions/28072196/a-hover-button-in-react-js) – BentOnCoding