Angular2 ng build --prod error提供的参数与调用目标的任何签名都不匹配

时间:2017-06-15 15:36:10

标签: angular build

我刚开始使用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,所以我认为一切都是最新的。

我错过了什么?这意味着什么?

2 个答案:

答案 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]
})