我刚开始使用Angular2,这是我的第一个项目 https://github.com/Exlord/angular2-sample-dynamicform
这在dev中工作正常但是当我尝试ng build --prod
时,我收到此错误:ERROR in ng:///E:/www/ng2-sample/src/app/field/field-form/field-form.component.html (2,26): Supplied parameters do not match any signature of call target.
错误是指this line
<div class="form-group" [ngClass]="{'has-error':!form.get('name').valid && form.get('name').touched}">
我几天前安装了angular2 + cli,所以我认为一切都是最新的。
我错过了什么?这意味着什么?
答案 0 :(得分:1)
你这里有错误
if (('ngSubmit' === en)) {
const pd_2:any = ((<any>_co.save(_co.form.value,_co.form.valid)) !== false); <= this line
ad = (pd_2 && ad);
}
来自
<form [formGroup]="form" (ngSubmit)="save(form.value, form.valid)" novalidate>
如果您打开 field-form.component.ts 文件
save(value: any): void {
this.submitted = true;
this.fieldService.save(<Field>value).then((field) => {
this.submitted = false;
this.form.reset();
this.onSave.emit();
});
}
您可以注意到save
方法在模板中传递两个时只有一个参数
答案 1 :(得分:0)
尝试在组件提供程序中添加FormBuilder和FieldService。
@Component({
selector: 'app-field-form',
templateUrl: './field-form.component.html',
styleUrls: ['./field-form.component.css'],
providers : [FormBuilder, FieldService]
})