Когда метод вызывается из дочернего компонента, предложения родительского компонента не изменяются в angular.io.
У меня есть этот метод в dashboard.component
:
listPeers(){
this.loading = true;
this.localStorage.getItem("payload").subscribe( (storage : string) =>{
this.jwt = storage;
this.userService.listPeers(this.jwt).subscribe( (res) => {
this.loading = false;
if(res.success){
console.log(res.peers)
this.peers = res.peers;
this.listUsersCrm();
}else{
this.snackBar.openFromComponent(ToastComponent, {
data: res.msg
});
this.router.navigate(['/notfound']);
}
})
})
}
И на "commit-changes.component" я вызываю этот метод:
import { Component, OnInit} from '@angular/core';
import { DashboardComponent } from "../dashboard/dashboard.component";
@Component({
providers: [DashboardComponent],
selector: 'app-commit-changes',
templateUrl: './commit-changes.component.html',
styleUrls: ['./commit-changes.component.scss']
})
export class CommitChangesComponent implements OnInit {
constructor(private dashBoardComponent : DashboardComponent) { }
ngOnInit() {
}
discardChanges(){
this.dashBoardComponent.listPeers();
}
}
Этот метод уже вызван, но реквизиты от родителя (dashboard.component) не изменены.
Примечание: Метод listPeers
вызывает API для перечисления пиров, хранящихся на BD, и установки реквизитов пиров.
this.peers = res.peers;
Как правильно выполнить этот метод и применить изменения реквизитов?