无法读取undefined的属性'navigation' - 做出本机反应
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法读取undefined的属性'navigation' - 做出本机反应相关的知识,希望对你有一定的参考价值。
我正在开发一个反应原生应用程序。在那个应用程序当我调用以下函数时,我收到一个错误
无法读取undefined的属性'navigation'
handleForgotPassword = (email) => {
firebase.auth().sendPasswordResetEmail(email)
.then(function (user) {
console.log("Inner");
this.props.navigation.navigate("Login") //not working
}).catch(function (e) {
console.log(e)
})
}
但在同一页面上,我使用以下代码,它工作正常。
<TouchableOpacity onPress={() => this.props.navigation.navigate("Login")}> //but this is working
<Image source={require('../src/Assets/close.png')} />
</TouchableOpacity>
谁能告诉我这是什么问题
答案
匿名函数有它自己的上下文(这就是未定义导航的原因)......但是箭头函数会自动绑定到它的父元素
firebase.auth().sendPasswordResetEmail(email)
.then((user) => {
console.log("Inner");
this.props.navigation.navigate("Login") // Will work
})
以上是关于无法读取undefined的属性'navigation' - 做出本机反应的主要内容,如果未能解决你的问题,请参考以下文章
无法读取undefined的属性'navigate' - React Native
TypeError:无法读取undefined的属性'gmail'
Ionic3测试:TypeError:无法读取undefined的属性'subscribe'