在Angularjs 2 rc4中使用FormBuilder

时间:2016-07-23 09:27:25

标签: angular

我想在我的源代码中使用FormBuild。我的朋友(使用ng2 rc1),我就是按照这个例子。

我不知道这个问题的链接..对不起..

<http://plnkr.co/edit/WTu5G9db3p4pKzs0WvW6?p=preview>.

import { REACTIVE_FORM_DIRECTIVES, FormGroup } from '@angular/forms';
import { Validators, FormBuilder } from '@angular/common';
import { Component } from '@angular/core';

@Component({
    selector: 'aaa',
    template: `
        <fieldset [formGroup]="data">
            <input type="text" id="" name="" formControlName="name" [(ngModel)]="data.name">
            <input type="text" id="" name="" formControlName="email" [(ngModel)]="data.email">
        </fieldset>
    `,
    providers: [
    ],
    directives: [ 
    REACTIVE_FORM_DIRECTIVES
    ]
})

export class AAA {
    private data: any;

    constructor(private formbuilder: FormBuilder) {
        console.log(Validators.required);
        this.data = this.formbuilder.group({
            'name': ['', Validators.required],
            'email': ['', Validators, required]
        });
    }
}

但是我的来源只有错误。错误消息是this.validators不是一个函数。 我如何使用验证器?我不知道解决了这个问题。 rc4版本的问题?

1 个答案:

答案 0 :(得分:0)

您无法混合@angular/common(旧)和@angular/forms(新)

中的表单内容

如果您使用

bootstrap(AppComponent, [
   disableDeprecatedForms()
   provideForms()
])

不要从@angular/common导入表单内容,如果不导入,请不要从@angular/forms导入