我正在尝试使用angularfire2 / auth类实现密码重置功能,以下是此处的实现:https://medium.com/@c_innovative/implementing-password-reset-can-be-a-tricky-but-inevitable-task-737badfb7bab
我的代码与下面的代码基本相同:但出现错误
“类型'Observable(User)'中不存在属性'confirmPasswordReset'
handleResetPassword() {
if (this.newPassword != this.confirmPassword) {
this.matSnackBar.open("Passwords do not match.", null, { duration: 4000 });
return;
}
// Save the new password.
this.authService.getAuth().confirmPasswordReset(
this.actionCode,
this.newPassword
).then(resp => {
// Password reset has been confirmed and new password updated.
alert('New password has been saved');
this.router.navigate(['/login']); }).catch(e => {
// Error occurred during confirmation. The code might have
// expired or the password is too weak. alert(e);
});
}
实现REST解决方法的捷径,有人知道为什么这个angularFire auth方法似乎不起作用吗?它应该是auth对象上的有效函数。
答案 0 :(得分:0)
您必须使用@ angular / fire / auth
从您的handleResetPassword方法中使用注入的属性
import { AngularFireAuth } from '@angular/fire/auth';
@Injectable({
providedIn: 'root'
})
export class UserService {
constructor(private fbAuth: AngularFireAuth) {}
handleResetPassword() {
// call comfirmPasswordReset method like this
this.fbAuth.auth.confirmPasswordReset(this.actionCode,this.newPassword)
}
}