Ich bin sehr neu in Angular2 Framework, also entschuldigen Sie alle üblichen Fehler. Ich habe zwei Formen in 2 div Tags. Ein Login-Formular ist ein Passwort-Reset-Formular. Unter dem Login-Formular gibt es einen Link, der beim Anklicken das Login-Formular ausblendet und das Passwort-Reset-Formular anzeigt.Angular2 * .ngIst nicht nach dem ersten Klick funktionsfähig
Unter dem Formular zum Zurücksetzen des Passworts befindet sich ein Link, der nach dem Anklicken das Formular zum Zurücksetzen des Passworts ausblendet und das Anmeldeformular anzeigt.
Standardmäßig ist das Login-Formular sichtbar. Hier ist der HTML-Code
<div class="login-block" *ngIf="!showResetPassword">
<form [formGroup]="loginForm" (ngSubmit)="onSubmit(loginForm)">
<h1>Login</h1>
<div>
<label for="username"></label>
<input type="text" placeholder="username" id="username" formControlName="username" />
</div>
<div >
<label for="password"></label>
<input type="password" placeholder="password" id="password" formControlName="password" />
</div>
<div>
<button type="submit" >Log In</button>
</div>
</form>
<div>
<a href="#" (click)="onTogglePasswordReset($event)" >Reset Password?</a>
</div>
</div>
<div class="login-block" *ngIf="showResetPassword">
<form [formGroup]="resetForm" (ngSubmit)="onSubmit(resetForm)">
<h1>Reset password</h1>
<div>
<label for="resetusername"></label>
<input type="text" placeholder="username" id="resetusername" formControlName="resetusername" />
</div>
<div>
<button type="submit">Continue</button>
</div>
</form>
<div>
<a href="#" (click)="onTogglePasswordReset($event)">Account Access</a>
</div>
</div>
und dies ist meine Typoskript Funktion
onTogglePasswordReset (e: Event) {
e.preventDefault();
this.showResetPassword=!this.showResetPassword;
alert(this.showResetPassword);
}
Das Problem, das ich habe ist, dass wenn ich zum ersten Mal in ein und klicken Sie auf ‚Passwort zurücksetzen‘ -Link, der Reset-Formular wird angezeigt, aber wenn ich auf "Kontozugriff" klicke, wird das Anmeldeformular nicht angezeigt. so funktioniert es einmal und dann stoppt es.
Der seltsame Teil ist, dass, wenn ich das Formular zum Zurücksetzen des Passworts beim Start anzeigen und dann auf "Kontozugriff" klicken, zeigt es das Login-Formular. Wenn ich dann auf den Link "Passwort zurücksetzen" klicke, wird das Zurücksetzungsformular angezeigt, aber wenn ich erneut auf "Kontozugriff" klicke, wird das Anmeldeformular nicht angezeigt. So funktioniert es zweimal und stoppt dann.
Ich hatte das Formular Conrtols in der ts-Datei deklariert, nur hat sie nicht eingefügt. Dein Code in Plunker funktioniert, aber ich habe immer noch das gleiche Problem an meinem Ende. –
Vielen Dank für Ihre Hilfe. Ich konnte den Fehler mithilfe Ihres Plunker-Codes eingrenzen. Das zweite Formular verfügte über ein Eingabesteuerelement, das im Formularerstellungscode in Typescript nicht korrekt referenziert wurde. –