林新手在angular4,這是我的組分:ERROR錯誤:沒有值訪問用於與開關未指定的名稱屬性表單控件
@Component({
selector: 'input-extra-field',
template: `
<div class="form-group" [formGroup]="formGroup" >
<switch [attr.title]="field.etiquette"
[attr.value]="field.valeur" [(ngModel)]="field.valeur"
[formControl]="fieldControl" [attr.id]="name" [attr.disabled]="disabled">
</switch>
<error-messages [control]="name"></error-messages>
</div>
`
})
這是我的類別:
export class SwitchExtraField extends ExtraField {
@Input() field: ExtraFormField;
@Input() entity: { fields: Object };
@Input() formGroup: FormGroup;
constructor(formDir: NgForm) {
super(null, null, formDir);
}
get disabled(): string {
if (this.field && !!this.field.saisissable && !this.field.saisissable) {
return 'disabled';
}
return null;
}
}
這是錯誤我得到編譯時:
ERROR Error: No value accessor for form control with unspecified name attribute
at _throwError (forms.es5.js:1918)
at setUpControl (forms.es5.js:1828)
at FormControlDirective.webpackJsonp.../../../forms/@angular/forms.es5.js.FormControlDirective.ngOnChanges (forms.es5.js:4617)
當我在元件開關切換到輸入它的工作原理,知道林使用與其他組件相同的結構,它工作正常。
謝謝。
在這裏閱讀有關'ControlValueAccessor' - [在Angular窗體中實現ControlValueAccessor時再也不會混淆](https://blog.angularindepth.com/never-again-be-confused-when-implementing-controlvalueaccessor-in-angular -forms-93b9eee9ee83) –
這可能可以幫助你:https://stackoverflow.com/questions/46708080/form-control-errorerror-error-no-value-accessor-for-form-control-with-unspecif – Dinistro