【发布时间】:2018-02-03 10:02:12
【问题描述】:
我正在使用什么
- 角度
- Firebase
我有什么
显示“问题”详细信息的组件
在问题中,我有另一个名为“images”的节点
在图像节点内部,我将拥有更多属性,例如“image_title”
我正在努力实现的目标
我的问题组件可以显示与问题相关的所有数据
但是,一个问题可能在图像节点下有多个图像
我还想循环遍历图像节点并显示所有 'image_title' 属性
错误 我收到以下代码错误:
错误错误:找不到类型为“object”的不同支持对象“[object Object]”。 NgFor 只支持绑定到 Arrays 等 Iterables。
问题
- 这怎么可能?
问题列表解决程序
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<any> {
return Observable.create(observer => {
this.authService.user
.first()
.subscribe(user => {
const projectId = route.params['projectId'];
const issueId = route.params['issueId'];
this.database.object(`/issue/${projectId}/${issueId}`)
.first()
.subscribe(issue => {
observer.next(issue);
observer.complete();
});
});
});
}
问题组件 imagesToDisplay 是:
'imagesToDisplay: FirebaseListObservable;'
this.activatedRoute.data
.subscribe((
data: { issueData: any, issueImageData: any }) => {
this.issueToDisplay = data.issueData;
this.imagesToDisplay = data.issueData.images;
console.log(this.imagesToDisplay);
});
发布组件 HTML
HTML 中有一条注释,我试图在其中循环浏览图像。
<ul class="vs__details__ul">
<li class="vs__details__li" *ngIf="issueToDisplay.issue_title">
<div class="vs__label"> Issue Title </div>
<div class="vs__data"> {{ issueToDisplay.issue_title }} </div>
</li>
<li class="vs__details__li" *ngIf="issueToDisplay.issue_comments">
<div class="vs__label"> Issue Comments </div>
<div class="vs__data"> {{ issueToDisplay.issue_comments }} </div>
</li>
<li class="vs__details__li">
<div class="vs__label"> Images </div>
<!-- LOOP THROUGH IMAGES HERE -->
<div class="issue__images" *ngFor="let image of imagesToDisplay">
<div class="vs__data"> {{ image.image_title }}</div>
</div>
</li>
</ul>
来自 Firebase 的 JSON 结构
控制台 -(来自组件中的 console.log)
【问题讨论】:
标签: angular firebase firebase-realtime-database