Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème création d'un formGroup Angular/Ionic

    8 mai 2019 à 8:15:16

    Bonjour à toutes et tous,

    J'ai un problème depuis plusieurs jours : je n'arrive pas à générer une page avec un form méthode réactive et j'ai cette erreur-là : Can't bind to 'formGroup' since it isn't a known property of 'form'

    J'ai pourtant bien importé mes imports en haut de page, dans mon app.module, j'ai regardé sur plusieurs forums mais rien n'y fait il ne veut pas et là je suis à court d'idées.

    Je mets à disposition mon code.

    AngularCLI : 7.3.8

    Ionic : 4.12.0

    fichier .ts

    import { Component, OnInit } from '@angular/core';
    import { FormGroup, FormBuilder, Validators, ReactiveFormsModule } from '@angular/forms';
    import { AuthService } from '../services/auth.service';
    import { Router } from '@angular/router';
    
    @Component({
      selector: 'app-sign-up',
      templateUrl: './sign-up.page.html',
      styleUrls: ['./sign-up.page.scss'],
    })
    export class SignUpPage implements OnInit {
    
        signupForm: FormGroup;
        errorMsg: string;
    
        constructor(private fb: FormBuilder, private authService: AuthService, private router: Router) {
            this.initForm();
        }
    
      ngOnInit() {
      }
    
        initForm() {
            this.signupForm = this.fb.group({
                email: ["", [Validators.required, Validators.email]],
                password: ["", [Validators.required, Validators.pattern(/[0-9a-z]{6,/)]]
            });
        }
    
        onSubmit() {
            const email = this.signupForm.get("email").value;
            const password = this.signupForm.get("password").value;
    
            this.authService.createNewUser(email, password)
                .then(() => {
                    this.router.navigate(["/home"]);
                },
                    (error) => {
                        this.errorMsg = error;
                    })
        }
    }
    

    fichier .html

    <ion-header>
      <ion-toolbar>
        <ion-title>Création compte</ion-title>
      </ion-toolbar>
    </ion-header>
    
    <ion-content>
      <form [formGroup]="signupForm" (ng-submit)="onSubmit()">
        <ion-label placeholder="email" for="email"></ion-label>
        <ion-input typeof="text" id="inputEmail" formControlName="email"></ion-input>
    
        <ion-label placeholder="mot de passe" for="password"></ion-label>
        <ion-input typeof="password" id="inputPassword" formControlName="password"></ion-input>
    
        <ion-button color="primary" value="S'enregistrer" typeof="submit"></ion-button>
      </form>
      <h3>{{errorMsg}}</h3>
    </ion-content>

    fichier app.module.ts

    import { NgModule } from '@angular/core';
    import { BrowserModule } from '@angular/platform-browser';
    import { RouteReuseStrategy } from '@angular/router';
    
    import { IonicModule, IonicRouteStrategy } from '@ionic/angular';
    import { SplashScreen } from '@ionic-native/splash-screen/ngx';
    import { StatusBar } from '@ionic-native/status-bar/ngx';
    import { AppComponent } from './app.component';
    import { AppRoutingModule } from './app-routing.module';
    import { ReactiveFormsModule } from '@angular/forms';
    import { HttpClientModule } from '@angular/common/http';
    import { AngularFireAuth, AngularFireAuthModule } from '@angular/fire/auth';
    import { CommonModule } from '@angular/common';
    
    @NgModule({
      declarations: [AppComponent],
      entryComponents: [],
      imports: [
        BrowserModule,
        IonicModule.forRoot(),
        AppRoutingModule,
        ReactiveFormsModule,
        HttpClientModule,
        AngularFireAuthModule
      ],
      providers: [
        StatusBar,
        SplashScreen,
        { provide: RouteReuseStrategy, useClass: IonicRouteStrategy }
      ],
      bootstrap: [AppComponent]
    })
    export class AppModule { }
    

    Merci pour votre aide.

    -
    Edité par Wawan_ns 8 mai 2019 à 8:18:18

    • Partager sur Facebook
    • Partager sur Twitter

    Problème création d'un formGroup Angular/Ionic

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown