我使用 FormReactiveModule 使用 FormBuilder ,我创建了我的表格,如:
this.form = this.fb.group({
street: [null],
...
});
我的模板是:
<form [formGroup]="form">
<input formControlName="street" myAttributeDirective/>
</form>
如果我在输入中添加属性指令(此处为myAttributeDirective
),我如何订阅他的输入值更改,如我所做的那样:this.form.controls.street.valueChanges.subscribe(...)
?
答案 0 :(得分:2)
您可以使指令具有输入
@Input() set control(control) {
if(!control || !control.valueChanges) {
return;
}
control.valueChanges.subscribe(...)
}
你会得到像这样的HTML
<form [formGroup]="form">
<input formControlName="street" myAttributeDirective [control]="form?.controls?.street"/>
</form>