У меня есть жизненный цикл моего приложения, который выглядит следующим образом:
- Получить данные запроса.
- Изменение данных.
- Поставить данные запроса.
- Получить все данные.
- Показать все данные.
- Перейти к пункту 1.
Проблема в том, что точка 3 начинается до окончания точки 1, а точка 4 начинается до окончания точки 4
Код находится в разных файлах.
Файл 1. Сервис для http запросов
getObserver() {
return this.http.get(this.urlAddress);
}
setTitleForId(
this.http.put(this.urlAddress, obj).subscribe();
}
Файл 2. Компонент, использующий Файл 1.
ngOnInit() {
this.httpService.getObserver().subscribe((resp) => {
this.obj = resp[this.id] as Obj;
});
}
changeTitle(newTitle: string) {
this.obj.title = newTitle;
this.httpService.setTitleForId(this.obj);
}
Файл 3. Это второй компонент
ngOnInit() {
this.objs= [];
this.httpService.getMemesObserver().subscribe((resp: Obj[]) => {
this.objs= resp;
});
}
Объект:
export class Obj{
id: number;
title?: string;
}
Это мой пятый день с угловым.
Может быть, существует что-то вроде семафора?