2017-05-26 64 views
0

在我main.js,我有:如何設置函數的這個值?

import listeners from "./listeners" 
listeners.call(this) 

和我listeners.js是:

import _ from "lodash" 

const listeners =() => { 
    console.log("this", this) 
} 

export default listeners 

當它運行時,它並沒有在listeners功能正確this值。我究竟做錯了什麼?

+3

將箭頭函數改爲傳統的'function(){...}' - 另請參閱https://stackoverflow.com/questions/33308121/can-you-bind-arrow-functions –

+0

一般來說,您可以使用函數的'bind'方法(它在技術上並不會在函數中改變'this',它會根據您的需要使用'this'創建一個新函數) –

回答

1

它沒有正確的this,因爲ArrowFunction沒有定義this的本地綁定。

你可以找到一些信息here和規格here