2014-11-21 2 views
5

Ich verwende ReactJS und sein SyntheticEvent, um das Ereignis und seinen Ziel-DOM-Knoten zu verfolgen.ReactJS: Kann ich mein eigenes SyntheticEvent erstellen?

Ich erstelle ein paar veränderbare Komponenten und ich möchte, dass sie SyntheticEvent auslösen, um das DOM zu verfolgen und den geänderten Wert mit e.target und e.target.value zu verfolgen.

Wie kann ich SyntheticEvent instanziieren und ihnen DOM und seinen Zielwert zuweisen?

+0

Warum wollen Sie ein Ereignis benötigen erstellen und verteilen? Wenn Sie bereits einen Verweis auf das DOM-Element haben, können Sie einfach eine Funktion aufrufen? Verwenden Sie Rückrufe und übergeben Sie die Rückrufe von Eltern zu Kind als Requisiten. –

+0

Ich habe einen Ein-Aus-Schalter, den ich wie ein Kontrollkästchen arbeiten möchte, und es gibt keine Checkbox und ich möchte sein Verhalten nachahmen und so möchte ich ein SyntheticEvent. Gleiches mit meinem eigenen WYSIWYG-Editor. –

Antwort

-1

in der JSX Ihre Komponente kehrt so etwas wie dieses

<button onClick={this.myEventHandlerFunc}>button text</button> 

Deklarieren Sie die myEventHandlerFunc könnte hinzufügen: function (e) {} in Ihrer Komponente und Ihre Sachen tun :)

Hope this geholfen. .. ich fange jetzt an google einige zusätzliche Beispiele zu finden;)

EDIT:

Wenn Sie benutzerdefinierte Ereignisse auszulösen wollen könnten Sie auch nur JQ Zum Beispiel, und binden Sie Ihre Ereignisse an das Lebenszyklus-Ereignis componentDidMount. hier gibt es so etwas tun könnte:

$(document).on('myCrazyEvent', this.componentEvtHandler) 

Irgendwo anders könnten Sie ein Ereignis wie dieses

$(document).trigger('myCrazyEvent', [customVar]);