React 事件机制
一个组件的所有事件会使用统一的事件监听器,绑定到组件的最外层,那么如何使用?
- bind方法,绑定并且可以传递参数
<TouchableOpacity onPress={this.fun.bind(this)} onPress={this.fun.bind(this,"text")} > </TouchableOpacity> fun(){ }
- 如果不用传参数?
双冒号语法
{::this.fun}
- 在构造器内bind,好处是只绑定一次
constructor(props){
super(props);
this.state={}
this.fun=this.fun.bind(this)
}
<Text onPress={this.fun}></Text>
- 箭头函数 会自动绑定this
1. <Text onPress={this.fun}></Text>
const fun=(e)=>{
console.log(e)
}
2. <Text onPress={()=>this.fun()}></Text>
fun(){
}