2016-07-18 7 views
3

Ich habe einige Probleme mit Angular 2 Formen, ich habe erfolgreich einige Formulare in meinem Projekt implementiert und wenn ich versuche, dieses Formular hinzuzufügen , erhalte ich und Fehler von meinem Angular Cli: Type 'FormGroup' is not assignable to type 'typeof FormGroup'.Angular 2 RC-4 Formulare, Typ 'FormGroup' ist nicht typ 'typeof FormGroup' zuweisbar

Wer mit diesem getroffen?

Hier ist mein Komponentencode:

import { Component } from '@angular/core'; 
import {AngularFire} from "angularfire2/angularfire2"; 

import {DataService} from "../../shared/data.service"; 
import {FormGroup, FormBuilder, Validators} from "@angular/forms"; 

@Component({ 
    moduleId: module.id, 
    selector: 'tm-address-book', 
    templateUrl: 'address-book.component.html', 
    styleUrls: ['address-book.component.css'], 
    providers: [DataService] 
}) 
export class AddressBookComponent {myAddressForm = FormGroup; 
addressbook: Array<any>; 

constructor(private af: AngularFire, 
      private formBuilder: FormBuilder, 
      private dataService: DataService) { 
af.database.list('Addressbook').subscribe(address => { 
    this.addressbook = address; 
    console.log(this.addressbook); 
}); 

this.myAddressForm = formBuilder.group({ 
    'companyName': ['', Validators.required], 
    'street': ['', Validators.required], 
    'city': ['', Validators.required], 
    'postCode': ['', Validators.required], 
}) 
} 

Und hier ist der HTML-Formular-Code:

<form [formGroup]="myAddressForm" (ngSubmit)="onSubmit()"> 
      <div class="form-group"> 
       <input type="text" class="form-control" formControlName="companyName" name="companyName" placeholder="Nazwa firmy"> 
      </div> 
      <div class="form-group"> 
       <input type="text" class="form-control" formControlName="street" placeholder="Ulica"> 
      </div> 
      <div class="form-group"> 
       <input type="text" class="form-control" formControlName="city" name="city" placeholder="Miejscowość"> 
      </div> 
      <div class="form-group"> 
       <input type="text" class="form-control" formControlName="postCode" name="postCode" placeholder="Kod pocztowy"> 
      </div> 
      <button type="submit" class="btn btn-success waves-effect waves-light" data-toggle="collapse" data-target="#collapse1"> 
       Dodaj 
      </button> 
      </form> 

Antwort

17

Ich denke, man = mit : messed up.

Ihre myAdressForm Definition Um dies zu ändern:

export class AddressBookComponent { 

    myAddressForm : FormGroup; 
    ... 
} 

Die Art und Weise Sie es getippt (myAdressForm = FormGroup), wird die Eigenschaft myAdressForm zur Klasse Art von FormGroup

+0

Correct zuweisen ... Das wird mich setzen in eines Tages. Es ist das zweite Mal, dass ich bei dieser Art/Wert-Zuweisung versagt habe ... Danke – MatWaligora

Verwandte Themen