当前,我们正在使用Firebase身份验证进行登录。 一切正常。现在,我们尝试显示用户错误消息,例如当他们要用于注册帐户的电子邮件地址已经与另一个帐户链接时。或者当他们的密码不够复杂时。 ts代码看起来像这样。
register() {
let emailAddress = this.emailAddress
let password = this.password
let firstName = this.firstName
let lastName = this.lastName
let errorMessage = ""
errorMessage = auth().createUserWithEmailAndPassword(emailAddress, password).then(
function(data) {
console.log(data)
},function(error) {
let errorCode = error.code
console.log(error.message);
let errorMessage = ""
console.log(errorCode)
switch(errorCode) {
case "auth/email-already-in-use":
console.log("auth/email-already-in-use");
errorMessage="The email address is already in use by another account"
break;
case "auth/weak-password":
console.log("auth/weak-password")
errorMessage="Your password should be more complex"
break;
}
this.displayErrorMessage(errorMessage)
});
console.log(errorMessage)
}
displayErrorMessage(errorMessage: string) {
this.errorMessage = errorMessage;
}
调用this.displayErrorMessage(errorMessage)
显然不起作用,但我不知道如何从此lambda函数内部正确访问此函数。
“ errorMessage”通过数据绑定绑定到HTML中的标签。 所以我的问题是如何将errorMessage从lambda函数内部传递给lambda外部的变量'errorMessage'?