在Angular 7表单上,我有:
<form [formGroup]="message" (ngSubmit)="onSubmit()">
<input id="name" type="text" placeholder="Name" formControlName="name">
<p class="error" *ngIf="message.get('name').errors">
{{message.get('name')?.errors?.error}}
</p>
</form>
如果字段name
有任何错误,我将显示错误段落。
我宁愿使用一个简单的指令,而不是重复错误段落代码:
<p class="error" formValidationName="name"></p>
我尝试创建指令:
@Directive({ selector: 'formValidationName' })
export class FormValidationNameDirective {
constructor(el: ElementRef, renderer: Renderer) {
renderer.setElementStyle(el.nativeElement, 'display', 'none');
// Get formGroup
}
}
如何在指令内部获取指令所在的formGroup?
在此示例中为消息formGroup。
我需要这个,以便在指令模板中可以呈现:
<p class="error" *ngIf="message.get('name').errors">
{{message.get('name')?.errors?.error}}
</p>
消息是FormGroup实例。