Comment afficher les messages d'erreur dans les formes Ioniques 3

Ici, j'ai essayer d'afficher les messages d'erreur dans forms dans Ionic-3.

Voici mon email.html fichier:

<form [formGroup]="form" (submit)="signIn()">
    <ion-grid>
        <ion-row>
            <ion-col>
                 <ion-item>
                    <ion-label color="primary" floating>Email</ion-label>
                    <ion-input [formControl]="form.controls['email']"></ion-input>
                  </ion-item>

                  <p *ngIf="form.controls.email.errors && form.controls.email.dirty" class="danger" padding>Email is not valid.</p>

            </ion-col>
        </ion-row>
    </ion-grid>

    <ion-list padding>
        <ion-item>
            <button ion-button default item-end color="light" (click)="cancel()">CANCEL</button>
            <button ion-button default item-end color="next" [disabled]="!form.valid" (click)="next()">NEXT</button>
        </ion-item>
    </ion-list>
</form>

Dans mon email.ts fichier que j'ai:

export class EmailSignupPage {

   form : FormGroup;

   constructor(
       private formBuilder: FormBuilder,
       public navCtrl: NavController,
       public navParams: NavParams,
   ) {
       this.form = this.formBuilder.group({
        email: ['', Validators.compose([Validators.required, Validators.email])]
       });
   }

   ionViewDidLoad() {

   }

   next() {
       this.navCtrl.push(CredentialPage);
   }

   cancel() {
       this.navCtrl.popToRoot();
   }
}

Je pense que mon code est bien dans la email.ts fichier, mais je ne sais pas comment afficher les erreurs dans mon formulaire quand il valider que je suis nouveau sur ionique et angulaire!

Est-il un qui peut m'aider?

Merci!

  • Qu'essayez-vous de réaliser (mise conditionnelle couleurs rouges, montrant conditionnelle des messages, d'autres comportements personnalisés...) ? Je veux dire que vous disposez déjà d'une condition message d'erreur devrait apparaître dans le cas où il y a des erreurs (vous utilisez *ngIf correctement).
  • C'est le point! Je ne sais pas comment l'utiliser *ngIf pour afficher le message d'erreur. Ce que j'avais à faire ici n'est pas le fonctionnement! Je vais déjà faire la condition d'erreur pour les couleurs. Pouvez-vous savez comment l'utiliser *ngIf dans ma ce cas?
  • 1) votre signIn() méthode ( <form (submit)="signIn()"> ) sera appelée lors d'un clic soit CANCEL bouton ou NEXT bouton, sauf si vous les mettez dehors de la <form> balise (comme le déplacement de l'ensemble de la <ion-list>...</ion-list> après </form>). 2) Vous êtes à l'aide de la Angular2 *ngIf directive correctement. En fait, *ngIf="myVar" fonctionne comme un javascript if (myVar){}. Si myVar est pas défini ou est faux, *ngIf sera pas afficher le contenu auquel il est attaché. Jetez un oeil sur les exemples du lien. (PS: votre code se comporte bien quand je build).
InformationsquelleAutor Hiren Gohel | 2017-09-22