<TouchableHighlight
onPressIn={this._onPressIn}
>
_onPressIn =() => {
this.setState({ pressing: true });
}
//1. works
_onPressIn(){
this.setState({ pressing: true });
}
//2. error
<TouchableHighlight
onPress={this._onPress}
>
_onPress(){
Alert.alert('','HELLO');
}
//3. works
_onPress=()=>{
Alert.alert('','HELLO');
}
//4. works
は、私は非常によく英語を話すことができないの矢印表記。だから私はあなたが私の言葉を理解できるように努力します。は、ネイティブの反応 -
1と2の間に何か違いがありますか? それが存在すれば、なぜ3と4が同じ結果を持っているのですか?
Iは1と2の間に違いはありませんと思っています..しかし、あなたは、あなたが「これ」にバインドする必要が矢印の機能を使用していない場合例1 ..他のではなく、通常
arrow関数は自動的にこのコンテキストを設定しますが、通常はjsxコードの中で矢印関数を設定します。あるいは、コンストラクタでこれをバインドします。 – Icepickle
違いは 'this'キーワードです。 –