У меня есть соответствующий метод для установки значения свойства status , для которого я подписываюсь в магазине для получения значения. Но в моем случае я хочу, чтобы это свойство автоматически обновлялось при каждом изменении в моей внутренней БД (в основном это изменение в БД). Как я могу сделать это без обновления страницы вручную? Pi c: Значок в первом столбце, как показано, необходимо изменить на другой (что для меня делает метод getLegend ()) всякий раз, когда происходит изменение в DB
HTML:
<data-table-column [property]="'status'">
<ng-template #dataTableCell let-item="item" let-column="column" let-row="row">
<div>
<img alt="icon" class="legendIcon" src="{{ getLegend(item[column.property]) }}" />
</div>
</ng-template>
</data-table-column>
Мой вызов эффектов:
loadMyList$ = createEffect(() =>
this.actions$.pipe(
ofType(homeActions.loadInit),
switchMap(() =>
this.homeService.getMyList().pipe(
map((data: any) =>
homeActions.loadListSuccess({
payload: data
})
),
catchError(error => {
if (error.status === 404) {
return of(homeActions.loadListSuccess({ payload: { records: [] } }));
}
return of(homeActions.loadListFailure({ error: error }));
})
)
)
)
);
Мой сервисный вызов выглядит так:
getMyList(): Observable<any> {
const url = this.constructGlobalUrl('/api/v1/listdata');
const options = {
params: new HttpParams().append('canShowSpinner', 'true')
};
return this.http.get<any>(url, options);
}
Пожалуйста, прокомментируйте, если вам нужно что-то еще!