【发布时间】:2023-03-12 16:24:01
【问题描述】:
我正在使用一些 REST 服务来收集数据,然后在我的组件代码中更改 Observable 的值。我正在尝试使用 *ngIf 根据结果显示/隐藏 div 标签。但是,它不起作用,*ngIf 没有根据对 Observable 的更改进行更新。
我必须触发变更检测吗?在 Angular 7 中实现这一目标的最佳方法是什么?这是我试过的一个例子:
HTML:
<div *ngIf="isAnimal$">
<p>animal</p>
</div>
组件:
public isAnimal$: Observable<boolean> = of(false);
...
ngOnInit() {
checkAnimal();
}
private checkAnimal() {
this._dataService.getData()
.subscribe((result) => {
if (result === 'animal') {
this.isAnimal$ = of(true);
}
});
}
我也尝试过创建一个简单的服务,但也没有用。像这样:Angular *ngIf binding to function
【问题讨论】:
标签: angular rxjs observable angular7