Pelas minhas análises, a Imboud property photos, lá do componente photos não está mudando quando eu altero a url, apesar de a variável photos aqui neste componente photo-list mudar, isso não está sendo passando para o componente photos, e então, o ngOnChanges do componente photos não dispara para atualizar a view das fotos. O que será que pode ser isso? Estou usando Angular 10.
componente photo-list
ngOnInit(): void {
console.log('ngOnInit() do component photo-list');
this.activatedRoute.params.subscribe(
(params) => {
console.log('params: ', params);
this.userName = params.userName;
this.photos = this.activatedRoute.snapshot.data['photos'];
}
);
}
componente photos
@Input() photos: Photo[] = [];
rows: any[] = []; // quem vai ser o row, é minha LI
constructor(private activatedRoute: ActivatedRoute) { }
ngOnInit(): void {
}
ngOnChanges(changes: SimpleChanges) {
if (changes.photos) {
console.log('PHOTOS: ', this.photos);
console.log('PHOTOS: ', changes.photos);
this.rows = this.groupColumns(this.photos);
}
}
groupColumns(photos: Photo[]): Photo[] {
const newRows = [];
for (let index = 0; index < photos.length; index += 3) {
newRows.push(photos.slice(index, index + 3));
}
return newRows;
}