我正在开发React本机应用程序。在该应用程序中当我调用以下函数时,出现错误
无法读取未定义的属性“导航”
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>
谁能告诉我是什么问题
答案 0 :(得分:3)
匿名函数具有它自己的上下文(这就是为什么导航未定义)...但是箭头函数自动绑定到其父项
firebase.auth().sendPasswordResetEmail(email)
.then((user) => {
console.log("Inner");
this.props.navigation.navigate("Login") // Will work
})