<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 的结果相同?
我以为 1 和 2 之间没有区别。但是示例 1 工作正常,另一个则不然。
如果您没有使用箭头函数,则必须将"this"绑定到您的按钮。 例如:
<TouchableHighlight
onPressIn={this._onPressIn.bind(this)}
>
应该适用于案例 #2。