angular - 重新渲染角度分量
问题描述
我有一个 Angular 组件,它显示一些信息(为了这个场景的目的)。在我的打字组件中,我有一个函数可以获取要显示的新数据。为了这个场景,假设组件无法呈现新信息,除非我重新呈现它。此时我正在使用 setTimeout() 执行此操作,如下所示:
updateData(){
this.data=this.dataService.getData();
this.showComponent=false;
setTimeout(()=>{this.showComponent=true;},1);
}
这样我确信我的组件将被重新渲染。我知道这是解决问题的一种非常愚蠢的方法。我怎样才能做得更好?
解决方案
dataService.getData()
应该返回一个您订阅的 Observable 。然后你设置showComponent
为真。
像这样的东西:
this.dataService.getData(
(data) => {
this.data = data;
this.showComponent = true;
}
);
推荐阅读
- javascript - 无限滚动显示重复结果
- python - Python中的变量参数与列表作为函数参数
- python - 使用python在Houdini中旋转面对向量
- reactjs - 减速器将状态作为组件中的道具传递未定义
- c++ - 为什么sqlite的delete总是成功,即使要删除的行不存在?
- javascript - OpenVidu - 为现有发布者添加流 - Javascript
- javascript - Unable to check the multi-select checkbox filter of the Kendo Grid Programmatically
- java - findAll() 在 SpringBoot Rest MySql CRUD 操作应用程序中不起作用
- c++ - 通过 Wininet 的 HTTP POST 请求
- html - 为什么不同视口中的浏览器一直隐藏我只想隐藏某些视口大小的内容?