React Native按钮onPress提示函数未找到问题求助
解决React Native按钮onPress函数未找到的错误
我一眼就发现问题所在啦!你定义的函数名是tranfer(少了一个字母s),但在按钮的onPress回调里调用的却是this.transfer(),两个名字不匹配,这就是触发“函数未找到”报错的直接原因。
修正后的代码
把函数名改成正确拼写的transfer即可:
transfer = () => { console.log("transferring"); this.props.navigation.navigate('TransferScreen'); }
后续类似问题的排查小贴士
- 仔细核对函数名的拼写和大小写:React/React Native对变量名大小写敏感,哪怕差一个字符都会导致找不到函数
- 确认
this绑定是否正确:如果不用箭头函数定义类方法,需要在构造函数里手动绑定this,比如:constructor(props) { super(props); this.transfer = this.transfer.bind(this); } transfer() { // 函数逻辑 } - 确保函数是组件类的实例方法:别把函数定义成静态方法或者组件内部的嵌套函数,否则外部无法访问到它
内容的提问来源于stack exchange,提问作者SwimmingG
相关产品推荐
相关产品推荐

