Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 角度:从Firestore获取数据。在单击之前,HTML不会使用实时数据更新_Angular_Firebase_Google Cloud Firestore - Fatal编程技术网

Angular 角度:从Firestore获取数据。在单击之前,HTML不会使用实时数据更新

Angular 角度:从Firestore获取数据。在单击之前,HTML不会使用实时数据更新,angular,firebase,google-cloud-firestore,Angular,Firebase,Google Cloud Firestore,我正在用Angular构建一个小型Web应用程序 我查询firestore数据库并返回数据。一旦我收到数据,我就必须显示它。但是,在我单击应用程序中的其他地方(或其他地方)之前,显示数据的应用程序区域不会刷新 我正在为数据使用一个可观察的对象,我有一个订阅服务器,当数据更新时会触发它(console.log)——但是UI不是 我尝试了ChangeDetectorRef和detectChanges,在数据准备好使用*ngIf 我有一个正确触发的订阅服务器方法 ngOnInit() { cons

我正在用Angular构建一个小型Web应用程序

我查询firestore数据库并返回数据。一旦我收到数据,我就必须显示它。但是,在我单击应用程序中的其他地方(或其他地方)之前,显示数据的应用程序区域不会刷新

我正在为数据使用一个可观察的对象,我有一个订阅服务器,当数据更新时会触发它(console.log)——但是UI不是

我尝试了
ChangeDetectorRef
detectChanges
,在数据准备好使用
*ngIf

我有一个正确触发的订阅服务器方法

ngOnInit() {
  console.log("inited component.");
  obs$.subscribe(value => {
    console.log("Data List Update: (" + value.length + ") items in our dataset");
  })
}
在我的组件html文件中,我有:

<div *ngFor="let item of obs$ | async; trackBy: trackByFn">
  <h2>{{item.name}}</h2>
</div>

{{item.name}

调用subscribe函数时,我应该会看到html列表立即填充,但在另一个事件刷新它之前,这种情况不会发生。

我想你只是误解了它的工作原理

你需要分配你得到的值,这样html就知道里面有什么了。试试这个:

obs$.subscribe(value => {
  this.items = value;
  console.log("Data List Update: (" + value.length + ") items in our dataset");
})

<div *ngFor="let item of items">
  <h2>{{item.name}}</h2>
</div>
obs$.subscribe(值=>{
这个项目=价值;
log(“数据列表更新:(“+value.length+”)数据集中的项”);
})
{{item.name}

我想你只是误解了它的工作原理

你需要分配你得到的值,这样html就知道里面有什么了。试试这个:

obs$.subscribe(value => {
  this.items = value;
  console.log("Data List Update: (" + value.length + ") items in our dataset");
})

<div *ngFor="let item of items">
  <h2>{{item.name}}</h2>
</div>
obs$.subscribe(值=>{
这个项目=价值;
log(“数据列表更新:(“+value.length+”)数据集中的项”);
})
{{item.name}

由于问题不再可复制,将此标记为关闭主题。由于问题不再可复制,将此标记为关闭主题。