Ich versuche, einen Link zum Zurücksetzen des Passworts an die E-Mail-Adresse des Benutzers zu senden und den Fehler wie im Titel dieser Frage zu erhalten.Passwort zurücksetzen: Das erste Argument "email" muss eine gültige Zeichenfolge sein
Hier ist meine resetpassword.ts Datei
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);
}
}
}
Hier ist der Code in user.ts Datei in Modellen Ordner:
export interface User {
email: string;
password: string;
}
Dieser Code unten ist der Teil der HTML-Datei:
<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>
Erstellen des Benutzers, Login ist alles gut, aber nicht in der Lage, die Reset-Passwort-E-Mail zu senden. Bitte helfen Sie! Vielen Dank.
Was wird 'console.log (this.user.email) 'ausgegeben? –
code: "auth/argument-error", nachricht: "sendPasswordResetEmail fehlgeschlagen: Das erste Argument" email "muss eine gültige Zeichenfolge sein." ist was es als Ausgabe wirft. Nicht sicher, warum die E-Mail nicht als gültige Zeichenfolge betrachtet wird – Murali
Wenn Sie die richtige E-Mail im Konsolenprotokoll erhalten, versuchen Sie etwas wie diese 'this.user.email.toString' oder wickeln Sie sie als String um. – Hareesh