2016-08-16 3 views
-2

Mein Ziel ist es, mehrere Funktionen onClick aufrufen. Nehmen wir an, dass einige von ihnen ein Ereignis und einen Wert genommen haben, so dass sie nicht in einer einzigen Funktion aufgerufen werden können. Wie kann ich das erreichen?ReactJs mehrere Funktionen Anruf inline

render() { 
    //describe first function (1) 
    const amountSelectClearInput = function(event) { 
     // call two functions here 
     this.amountSelect(event); 
     this.clearInput(); 
    }.bind(this); 
    var self = this; 
    return (
     <div> 
      <div> 
       {amounts.map(function (name, index) { 
        return <input type="button" value={name} 
            className={self.state.active === name ? 'active' : ''} 
            //here I must call() => self.changeClass(name) (1), and amountSelectClearInput (2) 
            onClick={() => self.changeClass(name)} key={ name }/>; 
       })} 
      </div> 
     </div> 
    ); 
} 

Ich brauche amountSelectClearInput und () => self.changeClass(name) zur gleichen Zeit mit diesem Ansatz

Antwort

0
onClick={function() { amountSelectClearInput(event); self.changeClass(name)}} 
+0

Ein Problem ist zu nennen, dass es schwieriger zu testen. Anstatt eine einzige Methode zu stubben, müssen Sie zwei stubben. Wenn Sie es so machen, sollten Sie 'event' als Parameter für die anonyme Funktion definieren. –

+0

Danke! Du bist gut darin, unhöflich und herablassend zu sein. Nützlich, da bin ich mir sicher. –