Escribí una directiva en angular que deshabilita o habilita un botón después de validar un objeto. Pero el botón también tiene otros requisitos de validación simples que se proporcionan directamente a la directiva "deshabilitada" como valor. Ejemplo de código html:
<button (click)="onSave()" [disabled]="validation1() || !validation2()" [validProperty]="myObject.property">Save</button>Esta es mi directiva:
import { Directive, Input, OnChanges, HostBinding } from '@angular/core'; import { SomeType } from '../../types/data.types'; @Directive({ selector: '[validProperty]' }) export class ValidateDirective implements OnChanges { @HostBinding('disabled') disabled: boolean; @Input('validProperty') property: SomeType[]; constructor() { } ngOnChanges() { this.disabled = !this.validateProperty(this.property); } private validateProperty(property: SomeType[]): boolean { return false; } }Actualmente, mi botón solo considera las validaciones enviadas a [deshabilitado] y no mi directiva, aunque el control llega a mi directiva (he usado los puntos de interrupción de devtools para verificar). ¿Cómo hago para que considere tanto las validaciones [deshabilitadas] como mi directiva hostbinding? Algo así como un operador or. Gracias por la ayuda de antemano :)