角度4 - 动作后刷新

问题描述:

我正在创建一个示例CRUD应用程序。整个工作已经完成,但每次操作后我都无法刷新视图。举例来说,在我的组件我有这样的删除和阅读:角度4 - 动作后刷新

ngOnInit() { 
    this.getUsers(); 
} 
getUsers() { 
    this.userService.getUsers().subscribe(res => { this.users = res.data; }); 
} 

deleteUser() { 
    this.userService.deleteUser(this.selectedUser).subscribe(this.selectedUser = null); 
} 

正如你所看到的,我做内部ngOnInit的getUsers。我尝试在订阅deleteuser时执行this.getUsers,但它不允许我这样做,并且说getusers没有定义。我如何刷新视图?

+0

当它说getusers没有被定义时,错误消息/堆栈跟踪到底是什么? – Joe

subscribe()的第一个参数是一个函数。这个函数在你的observable发出一些东西时触发(在这种情况下,你的observable是一个http请求,所以当http请求成功时)。在这个函数中,你可以重新调用你的getUsers方法

deleteUser(){   
    this.userService.deleteUser(this.selectedUser).subscribe(res => { 
     // http request was successful, perform logic in here 
     this.getUsers(); 
    }); 
}