2016-03-04 82 views
2

我想是指this(即ReactJS組件)一個jQuery事件回調中:ReactJS:調用 '這' 一個jQuery事件偵聽器函數內

var Component = React.createClass({ 
    func1: function(){ 
     $("#multi").multiselect({ 
      onChange: function(a, b){ 
       this.test(); 
      }, 
     }); 
    }, 
    test: function(){ 
     console.log("Calling a react component function"); 
    } 
    ... 
}); 

但是它說:

TypeError: this.test is not a function 

如何在JQuery事件回調函數中引用this

回答

1

你需要的onChange回調結合上下文:

onChange: function(a, b) { 
    this.test(); 
}.bind(this) 

您也可能會使用一個箭頭功能:

onChange: (a, b) => this.test() 
相關問題