Olá tudo bem?
alguém poderia me explicar o porque que a minha propriedade do onChanges só é detectada na primeira mudança? na segunda ele nem passa pelo onChanges.
O fluxo é "verboso" porem o foco da discução seria o porque ele carrega apenas a primeira vez.
FLUXO:
Ao clicar no botão X do modal, eu emito um evento para o PAI
modal-custom.component.ts:
@Output() public stopVideoOutput = new EventEmitter<boolean>();
closeModal(){
this.stopVideoOutput.emit(true);
}
O pai escuta esse evento:
<app-modal-custom (stopVideoOutput)="stopVideo($event)">
Recebe os dados, e envia para o youtube-api.component.ts
youtube-api.component.ts:
@Input() stopVideoProperty = false;
ngOnChanges(changes: SimpleChanges): void {
//ELE SÓ AQUI UMA UNICA VEZ
// NÃO IMPORTA QUANTAS VEZES EU CLICAR NOVAMENTE NO X DO MODAL
if(changes.stopVideoProperty.currentValue && this.player != undefined){
this.player.stopVideo();
changes.stopVideoProperty.currentValue = false;
}
}