Я пытаюсь извлечь свои ежедневные часы из моего приложения, используя Observable, и обработать эти данные в виде массива, но сейчас я получаю эти данные в формате JSON.
accounting.service.ts:
items: { [key: string]: IItem } = {};
private update = new Subject<void>();
getDailyHours(): Observable<{ [key: string]: string }> {
return this.update
.map(() =>
_.chain(this.items)
.values()
.groupBy("date") //date is of type string
.mapValues(items => this.timeService.format(_.sumBy(items, "spent")))
.value()
)
.distinctUntilChanged(_.isEqual);
}
Overview.component.ts
dailyHours: { [key: string]: string } = {};
ngOnInit(){
this.calculationService.getDailyHours().subscribe(s => {
this.dailyHours = s;
console.log(this.dailyHours);
});
}
getHours(date: string) {
const sum = this.dailyHours[date];
return sum === "0m" ? "" : sum;
}
dailyHours печатается в консоли следующим образом:
{08.04.2018: "0m", 09.04.2018: "0m", 10.04.2018: "0m", 11.04.2018: "0m", 12.04.2018: "0m", …}
Это затрудняет анализ моих данных при получении динамических данных. (fx: если я вернусь на 1 неделю назад, у моего json будут другие значения ключей "01.04.2018", ... "07.04.2018")
Как я могу изменить свой наблюдаемый для вывода массива вместоJSON?