Угловые 2 формы RC-4, тип "FormGroup" не может быть назначен типу "typeof FormGroup"

angular forms typescript

11596 просмотра

1 ответ

863 Репутация автора

У меня возникли некоторые проблемы с формами Angular 2, я успешно реализовал несколько форм в своем проекте, и когда я пытаюсь добавить эту форму, я получаю сообщение об ошибке из моего Angular Cli: Type 'FormGroup' is not assignable to type 'typeof FormGroup'.

Кто-нибудь встречался с этим?

Вот мой код компонента:

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],
})
}

А вот код формы HTML:

<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>
Автор: MatWaligora Источник Размещён: 18.07.2016 01:49

Ответы (1)


46 плюса

37871 Репутация автора

Я думаю , вы перепутались =с :.

Измените ваше myAdressFormопределение на это:

export class AddressBookComponent {

   myAddressForm : FormGroup;
   ...
}

То, как вы его ввели ( myAdressForm = FormGroup), назначит свойство myAdressFormтипу классаFormGroup

Автор: PierreDuc Размещён: 18.07.2016 01:54
Вопросы из категории :
32x32