У меня проблема с загрузкой данных для дополнительной страницы, она работает нормально, если я нажимаю на продукты управления, а затем обновляю продукт, однако, если я обновляю продукт обновления, он теряет данные.
У меня есть целевая страница, например: панель инструментов, которая является боковой панелью. Например, при нажатии на продукты загружается страница управления продуктами.
в manage-products.component.ts я получаю такие продукты
this.products = this.productsService.products;
this.productsService.GetProducts().subscribe();
Мой products.service.ts
public GetProducts(): Observable<any> {
return this.httpClient.get(this.baseUrl + '/product').map(res => {
this._productSource.next(res as Product[]);
});
}
При нажатии на продукт он направляется на: product/update/1
в product-update.component.ts
Я фильтрую данные здесь, используя фильтрацию наблюдаемого. Если я обновлю эту страницу, все будет неопределенным. Должен ли я получать продукт, нажимая API вместо подписки на существующий наблюдаемый объект, если да, должен ли я создать новый маршрут API, который получает данные о продукте по productId или получать их все и фильтровать их?
Ценю любой совет. Спасибо





Из прочтения вопроса непонятно, как product-update.component.ts получает данные, которые ему необходимо визуализировать. Я предполагаю, что он получает его от @input() из родительского компонента.
Если это так, он не знает, что ему нужно обновляться, когда вы нажимаете обновление.
Итак, я предполагаю, что вам нужна услуга в дочернем компоненте, например
ngOnInit() {
this.getSalesItems();
}
getSalesItems(): void {
this.apiService.getSalesItems().subscribe(
value => {
this.saleItems = value;
},
error => {
console.info("Error get req = ", error);
}
);