когда моя страница viewEdit начинает работать, я устанавливаю this.viewModel $ примерно так:
viewModel$ = new Observable<any>();
.
.
.
this.viewModel$ = this.sb.getMachineToolWithMaintenance(this.id).pipe(
map((x:any) => {
const { maintenanceList, ...viewEditModel } = x.response;
return {
viewEditModel: viewEditModel,
maintenanceList: maintenanceList,
recentMaintenance: this.getMostRecentMaintenance(maintenanceList)
}
})
)
В представлении, которое я использую
<div *ngIf="viewModel$ | async as vm" class="container-fluid">
, чтобы распаковать мои наблюдаемые на странице.
У меня проблемы с выяснением того, как получить данные this.viewModel $ .viewEditModel, чтобы я мог опубликовать эти данные при сохранении.
В настоящее время сохранение представляет собой подписку на панель кнопок, которую прослушиваетonSave $ subject, чтобы знать, когда выполнять.
this.saveSubscription$ = this.ds.onSave$.subscribe(x => {
//in here I want to execute this.sb.updateMachineTool(this.viewModel$.viewEditModel)
})
updateMachineTool - это функция, которая в конечном итоге отправляет сообщения в мой бэкэнд через httpclient.
Как мне распаковать viewModel $, чтобы я мог отправлять нужные данные?
-
Я пытался использовать объекты поведения, но я мог испортить выполнение.