Como assinar mudanças na propriedade de uma diretiva
<input [myDirective]="myService.parameter" myServiceValue="{{myService.value}}" ... >
@Directive({
selector: '[myDirective]'
})
export class parameterDirective implements OnInit, OnChanges {
@Input('myDirective') parameter: parameter;
@Input() myServiceValue: string;
constructor(private el: ElementRef, private renderer: Renderer) {
}
ngOnInit(): void {
}
ngOnChanges(changes: SimpleChanges): void {
switch (this.parameter) {
case parameter.EnumValue:
this.renderer.setElementClass(this.el.nativeElement, "my-class", changes.myServiceValue.currentValue > 100);
break;
default:
}
}
}
Filthy Fly