2017-01-05 4 views
3

ich folgende React Komponente vorbereitet haben (React Version 1.5.2):Reagieren Component geht Proxy-Objekt anstelle Ereignisobjekt an die Behandlungsfunktion

var QuickSearch = React.createClass({ 
 

 
    searchHandler: function(){ 
 
     this.props.parent.props.dataSource.search = this.refs.SearchInput.value; 
 
     this.props.parent.props.dataSource.setPage(1); 
 
     this.props.parent.getData(); 
 
    }, 
 

 
    refreshHandler: function(){ 
 
     this.props.parent.props.dataSource.search = this.refs.SearchInput.value; 
 
     this.props.parent.getData(); 
 
    }, 
 

 
    myEventHandler: function(evt){ 
 
     console.log(evt); 
 
     if(evt.keyCode === 13) { 
 
      evt.stopPropagation(); 
 
      this.searchHandler(); 
 
     } 
 
    }, 
 

 

 
    render: function(){ 
 

 
     /* Translation function from table model */ 
 
     _ = this.props.parent.props.table_model.gettrans; 
 

 
     return(
 
      <div className="reactable-quicksearch-wrapper"> 
 
       <input ref="SearchInput" type="text" onKeyPress={this.myEventHandler} placeholder={_('Search phrase...')} /> 
 
       <button ref="SearchButton" type="button" onClick={this.searchHandler}>{_('Search')}</button> 
 
       <button ref="RefreshButton" type="button" onClick={this.refreshHandler}>{_('Refresh')}</button> 
 
      </div> 
 
     ); 
 
    } 
 

 
});

MyEventHandler Funktion als "evt" gibt Proxy-Objekt, das „Ziel“ (im Grunde ein Eingang) und Handler enthalten:

Proxy { <target>: Object, <handler>: Object } 

ich bin nicht sicher, warum, aber es scheint zu verhalten sich wie „s ubmit "(??) Wie auch immer, von dem, was ich gelesen habe, sollte das Standard-Event-Objekt passieren, tut es aber nicht.

Was kann diese Art von Verhalten verursachen?

Antwort

1

Dies ist das erwartete Verhalten. React verwendet keine systemeigenen Ereignisse, um Browser-Inkonsistenzen zu ermitteln, und verwendet SyntheticEvent s. Etwas sieht jedoch komisch aus. IIRC-Klassenname ist SyntheticEvent, nicht Proxy.

+0

in Proxy enthält Satz: [105] im Grunde gerendert wird Eingabeobjekt. – PiWo

Verwandte Themen