Angular2 : 'formGroup'a bağlanamıyor çünkü 'form'un bilinen bir özelliği değil;

Angular 2'de yeniyim ve reaktif bir form yapmaya çalışıyorum ama bazı sorunlarım var. Stack'te birçok arama yaptıktan sonra hiçbir çözüm bulamadım.

Burada hatamı görebilirsiniz

Kod:

Görünüm:

<main>
    <div class="container">
        <h2>User data</h2>
        <form [formGroup]="userForm">
            <div class="form-group">
                <label>name</label>
                <input type="text" class="form-control" formControlName="name">
            </div>
            <div class="form-group">
                <label>email</label>
                <input type="text" class="form-control" formControlName="email">
            </div>
            <div class="" formGroupName="adresse">
                <div class="form-group">
                    <label>Rue</label>
                    <input type="text" class="form-control" formControlName="rue">
                </div>
                <div class="form-group">
                    <label>Ville</label>
                    <input type="text" class="form-control" formControlName="ville">
                </div>
                <div class="form-group">
                    <label>Cp</label>
                    <input type="text" class="form-control" formControlName="cp">
                </div>
            </div>
            <button type="submit" class="btn btn-primary">Submit</button>
        </form>
    </div>
</main>

Modülüm.ts

import { NgModule }      from '@angular/core';
import { CommonModule }  from '@angular/common';
import { BrowserModule } from '@angular/platform-browser';
import { ContactComponent } from './contact.component';
import { FormGroup , FormControl , ReactiveFormsModule , FormsModule } from '@angular/forms';

@NgModule({
  imports: [
    NgModule,
    BrowserModule,
    FormsModule,
    ReactiveFormsModule,
    FormGroup,
    FormControl
  ],
  declarations: [
    ContactComponent
  ]
})
export class ContactModule {}

Ve benim component.ts

import {Component} from '@angular/core';
import { FormGroup , FormControl } from '@angular/forms';

@Component({
  selector: 'contact',
  templateUrl: './contact.component.html'
  // styleUrls: ['../../app.component.css']
})
export class ContactComponent {

    userForm = new FormGroup({
        name: new FormControl(),
        email: new FormControl(),
        adresse: new FormGroup({
            rue: new FormControl(),
            ville: new FormControl(),
            cp: new FormControl(),
        })
    });
}

Hatamı anlamıyorum çünkü ReactiveForm'un içe aktarımı burada. Yani ... yardımınıza ihtiyacım var :) Teşekkürler

Cevabınızı okuduktan ve kodumu yeniden düzenledikten sonra, tamam, bu çalışıyor! Sorun şu ki, reaktif modülü iletişim sayfamın modülüne aktarıyorum ve bunu uygulamamın modülüne aktarmam gerekiyor. İlginiz için çok teşekkürler :)

Umarım bu cevap başka insanlara yardımcı olur.

Çözüm

Bence bu, modülünüzde rastgele şeyler içe aktararak düzeltmeye çalıştığınız eski bir hata ve şimdi kod artık derlenmiyor. kabuk çıktısına dikkat etmezken, tarayıcı yeniden yüklenir ve yine aynı hatayı alırsınız.

Modülünüz şu şekilde olmalıdır:

@NgModule({
  imports: [
    CommonModule,
    FormsModule,
    ReactiveFormsModule
  ],
  declarations: [
    ContactComponent
  ]
})
export class ContactModule {}
Yorumlar (8)

Bileşeninize ReactiveFormsModule de eklemeyi deneyin.

import { FormGroup, FormArray, FormBuilder,
          Validators,ReactiveFormsModule  } from '@angular/forms';
Yorumlar (0)

UserForm = new FormGroup()` kullanmayın

Bunun yerine form = new FormGroup() kullanın.

Ve formda ... kullanın. Benim için angular 6 ile çalışıyor

Yorumlar (1)