我已经遵循了许多示例来尝试使其正常工作,但正在苦苦挣扎,并且似乎有很多不同的方法-因此最好来这里获得答案。
简单来说......我有一个组件,我想在创建时从 JSON 文件加载一些数据,并在加载数据时显示它。
appData.model.ts
export interface AppData {
lastUpdated: string;
}
数据服务.ts
getData(): Observable<AppData> {
return this.http.get<AppData>('data.json?noCache=' + Math.random());
}
测试组件.ts
export class TestComponent implements OnInit {
obsAppData: Observable<AppData>
constructor(private dataService: DataService) { }
ngOnInit() {
console.log('Test ngOnInit()');
this.obsAppData = this.dataService.getData();
}
然后,我尝试使用 html 模板中的以下代码将 lastUpdated 的值打印到组件中:
{{ obsAppData.lastUpdated | async }}
我在控制台中没有收到任何错误,但没有打印出来!任何人都可以看到代码有什么问题或关于如何调试问题所在的任何建设性建议吗?我认为我已经很好地掌握了 Angular,但可以肯定地说我正在努力解决 Observable 方面的问题。