页面重新加载后,我可以在表中获取更新的数据。但是我应该在不重新加载页面的情况下获取表中的数据。请在下面找到我的代码。
我正在编写一个用于批准表中实体的函数。因此,我正在调用更新实体API。成功响应后,我试图再次获得该表。但是如果不刷新页面就不会发生。
this.es.updateEntity(data).subscribe(r => {
this.entity = r;
this.APIgetAllEntity(); //Calling my api function to reload the table
})
答案 0 :(得分:0)
根据我对您问题的理解,如果我错了,请更正我,您需要在编辑表中的行后使用数据更新表。
我认为您有两种方法可以解决此问题:
第一种方法:
然后,您将需要具有返回该单个用户数据的api,或者我想做的是拥有将更新用户的api以返回更新的数据,因此您无需调用任何api。 在您的ts中:
updateUser(id, index){
this.userServiice.update(id, payload).subscribe((res: any) => {
this.users[index] = res;
})
}
第二种方法: 您只需调用返回用户(整个数组)的api,然后将响应分配给users数组即可。
答案 1 :(得分:0)
ngonint仅运行一次
因此,如果您要在ngoninit上创建新的MatDataSource,它将永远不会更新
使用if changes.userData查看ngchange,以确保它不只是每个周期都更改数据。