2017-06-21 12 views
0

は一例です:はアロー機能とは何をするのか:ここでのECMAScript 6

onChange = (event, { newValue }) => { 
    this.setState({ 
     value: newValue 
    }); 
}; 

これは

onChange(e, {newValue}) { 
    this.setState({ 
    value: newValue 
    }); 
} 

おかげでから何が違うのです!

+0

を確認してください。https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Functions/Arrow_functions –

+0

を*矢印機能は何をするのか*それは、ドキュメンテーションが言っていることをしています。 –

答えて

1

はい、あります:

onChange = (event, { newValue }) => { 
    this.setState({ 
     value: newValue 
    }); 
}; 

は、関数の外側の範囲からthisを取得しますので、それはそれはで定義された場所のthisを参照することになります。このオン

onChange(e, {newValue}) { 
    this.setState({ 
    value: newValue 
    }); 
} 

thisは、関数が呼び出されるとされていることをthisを参照しますので、thisは、それがからではなく、それがバインドされたオブジェクトから呼び出された場所からthisを参照しています。詳細については

矢印機能の使用チェックArrow Functions (MDN)

+0

回答するのではなく、重複を重複して閉じてください。 –

+0

@torazaburo私は質問を閉じるのに十分な評判はなく、他の不完全で紛らわしい答えを唯一のものとして残すのではなく、実際の答えを与えることがより有用であると考えました。 – GGG

+0

https://stackoverflow.com/help/privileges/close-questionsから:*あなたが近くの投票を行うために十分な評判を持っていない場合、またはその日に近い投票を使い果たした場合は、選択肢があります:質問オリジナルにリンクしたコメントを投稿* –

0

矢印機能バージョンはthisコンテキストにバインドされます。おそらくイベントコールバックに必要なものです。

関連する問題