Olá,
tenho esse código onde pego os dados via @Input()
import { Component, OnInit, Input, SimpleChanges } from '@angular/core';
@Component({
selector: 'app-card-clima',
templateUrl: './card-clima.component.html',
styleUrls: ['./card-clima.component.css']
})
export class CardClimaComponent implements OnInit {
@Input() clima: Object;
constructor() { }
ngOnInit() {
console.log(this.clima);
}
ngOnChanges(changes: SimpleChanges){
if(changes.clima){
this.clima = changes.clima;
}
console.log(this.clima);
}
}
Pelo que entendi, na hora que ele carrega a View ele inicializa com o construtor e depois o ngOnInit(), certo ? ai nesse momento o @Input() clima ainda não foi carregado ? Minha dúvida é sempre que eu passar dados usando o @Input, é sempre recomenando passar pelo ngOnChanges() ou existe outra solução para isso ?