1
我正在用Ionic 3/Angular 4/Firebase构建应用程序。以下代码正确认证用户并且登录有效。我不能读error.code
,即使它在console.log(error)
。Ionic Firebase身份验证:无法读取错误代码
这里是我的代码:
firebase.auth().signInWithEmailAndPassword(this.user.email, this.user.password)
.then((result) => {
// show toast
this.toast.show("Login was successful");
// set user to storage
this.storage.set("user", JSON.stringify(result))
// restore form submitted state
this.submitted = false;
// set nav root to Dashboard
this.navCtrl.setRoot("DashboardPage");
})
.catch((error) => {
console.error(error);
let errorCode = error.code // THIS CAN'T BE READ
});
由VS代码提示错误对象的属性是error.message
,error.name
和error.stack
。
这里是控制台日志:
O {code: "auth/invalid-email", message: "The email address is badly
formatted."}
code: "auth/invalid-email"
message: "The email address is badly formatted."
UPDATE
铸造到any
作品,但我不认为,这是它应该做的方式。
.catch((error: any) => {
谢谢您的回答。不幸的是,我得到一个新的错误:'类型'(错误:错误)=>无效'的参数不能分配给'(a:Error)=> any'类型的参数。参数'error'和'a'的类型 不兼容。类型'错误'不可分配给类型 'firebase.auth.Error'。属性“代码”在类型'错误'中丢失.' –
是的,我得到了同样的错误!但只有在包含我的服务的文件中,我已经导入了Firebase。 – robbannn
尝试使用类型'firebase.FirebaseError'。 – robbannn