角度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没有定义。我如何刷新视图?
答
subscribe()的第一个参数是一个函数。这个函数在你的observable发出一些东西时触发(在这种情况下,你的observable是一个http请求,所以当http请求成功时)。在这个函数中,你可以重新调用你的getUsers方法
deleteUser(){
this.userService.deleteUser(this.selectedUser).subscribe(res => {
// http request was successful, perform logic in here
this.getUsers();
});
}
当它说getusers没有被定义时,错误消息/堆栈跟踪到底是什么? – Joe