Странно, как эта проблема появилась в Angular 9, но раньше проблем не было.
Единственная идея, которая у меня есть, - попытаться обновить объект a
и массив recentAuctions
неизменным образом, чтобы они получите новые указатели на то, где они находятся в памяти, и, надеюсь, активирует обнаружение изменений.
Попробуйте:
this.countdownSubscription = interval(1000).subscribe(() => {
this.recentAuctions = this.recentAuctions.map(auction => ({
...auction,
timeLeft: this.auctionService.getTimeLeft(auction),
}));
});
Проверьте, работает ли это. .map
преобразует массив объектов в новое место в памяти, а оператор распространения ...auction
распространит предыдущие ключи / значения объекта в новое место в памяти, но timeLeft
будет перезаписано.