假设我有一个这样的表格:
this.form = fb.group({
genders: [['MALE']],
});
我已经实现了自己的自定义表单控件,它实现了ControlValueAccessor接口。我们了解到我们有writeValue
方法,但只有在使用setValue
或patchValue
时才会调用此方法。如何获取FormBuilder
的{{1}}方法中设置的默认值?
答案 0 :(得分:0)
您可以通过在组件中传递一个简单的@Input()来完成此操作。
@Component({ selector: 'my-component', template: `....` })
export class Component extends ControlValueAccessor {
@Input('property') property: any;
}
然后在HTML中,
<my-component formControl="gender" [property]="value">
答案 1 :(得分:0)
您希望从组值中接收默认值,请尝试使用您的组件:
this.form.value.genders
或者在您的.html文件中,您可以使用:{{ form.value. genders }}
答案 2 :(得分:0)
实际上我只是尝试过,writeValue
被调用两次,但第二次将正确的值作为初始值放在表单对象中。