1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
import { Directive, Input } from '@angular/core'; import { NgControl } from '@angular/forms'; @Directive({ selector: '[disableControl]' }) export class DisableControlDirective { @Input() set disableControl(condition: boolean) { const action = condition ? 'enable' : 'disable'; this.ngControl.control[action](); } constructor(private ngControl: NgControl) { } }