react-native 里面onPress函数不能直接写带参数的函数

 <Icon.Button onPress={() => {this._change('male')}} name="ios-male">男</Icon.Button>

这样写会报错,需要以下写法,放到return里面去

  <Icon.Button onPress={() => {() => {this._change('male')} }} name="ios-male">男</Icon.Button>

有大神知道为什么吗

阅读 6.1k
1 个回答

你这不是带参数的函数,是直接执行一个带参数的函数了。
你没发现那个 _change 没等到点击一开始就执行了吗?

写成第二种方式就是再用一个 function 把这个方法包住,点击时执行这个 function。

再去看看相关基础。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题