2016-07-23 30 views
0

我想在我的源代码中使用FormBuild。我的朋友(使用ng2 rc1)和我是按照这个例子。在Angularjs中使用FormBuilder 2 rc4

我不知道链接这个问题..抱歉..

<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版本问题?

+0

请发布您的代码... –

+0

你的'bootstrap()'看起来像什么?你有'disableDeprecatedForms()提供了吗?“()加载新的表单模块或你使用旧的吗? –

回答

0

不能从@angular/common(旧)和@angular/forms(新)混合形式的东西

如果使用

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

不从@angular/common导入的形式的东西,如果你不那么请勿从@angular/forms进口

+0

我有一个导入。我没有这个进口。无论如何,错误总是。 – mago

+0

谢谢!我知道你的答案中有什么不同/ comong和/形式。但我无法声明我的formbuilder.group().. – mago