0
사용자의 이메일에 비밀번호 재설정 링크를 보내고이 질문의 제목과 같은 오류가 표시됩니다.비밀번호 재설정 : 첫 번째 인수 인 "email"은 유효한 문자열이어야합니다.
은 여기 내 resetpassword.ts 여기
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { AngularFireAuth } from "angularfire2/auth";
import { User } from "../../models/user";
/**
* Generated class for the ResetpasswordPage page.
*
* See http://ionicframework.com/docs/components/#navigation for more info
* on Ionic pages and navigation.
*/
@IonicPage()
@Component({
selector: 'page-resetpassword',
templateUrl: 'resetpassword.html',
providers: [AngularFireAuth]
})
export class ResetpasswordPage {
resetMsg: string="Reset"
user = {} as User
constructor(private afauth: AngularFireAuth, public navCtrl:
NavController, public navParams: NavParams) {
}
async reset(user: User) {
try{
const result =
this.afauth.auth.sendPasswordResetEmail(this.user.email);
if(result) {
console.log(result);
}
}
catch(e) {
console.error(e);
}
}
}
이 모델 폴더에 user.ts 파일의 코드의 파일입니다 :
export interface User {
email: string;
password: string;
}
다음이 코드는 HTML 파일의 일부입니다
<ion-item>
<ion-label color="primary" floating>Email</ion-label>
<ion-input type="email" [(ngModel)]="user.email"></ion-input>
</ion-item>
<button class="reset" (click)="reset(user)" ion-button round medium icon-end color="primary">
{{ resetMsg }}
<ion-icon name="arrow-forward"></ion-icon>
</button>
사용자를 생성하면 로그인이 정상이지만 비밀번호 재설정 이메일을 보낼 수 없습니다. 도와주세요! 감사.
'console.log (this.user.email)'출력은 무엇입니까? –
코드 : "auth/argument-error", 메시지 : "sendPasswordResetEmail 실패 : 첫 번째 인수 인"email "은 유효한 문자열이어야합니다." 출력으로 던지는 것입니다. 왜 당신이 콘솔 로그에서 올바른 이메일을 얻는다면이 이메일이 유효한 문자열 인 – Murali
으로 간주되지 않는 이유를 잘 모르거나'this.user.email.toString'과 같이 시도하거나 String으로 감싸 주면됩니다. – Hareesh