【发布时间】:2017-03-24 10:14:41
【问题描述】:
我遇到了一个问题,我想尝试从数据库中获取一些数据。我收到数据但我无法显示它,因为它是对象而不是字符串。如何将这些对象转换为字符串我已经尝试过一些安静的事情,但似乎没有任何效果。
Component.ts
this.artistitems = af.database.object('/users/'+this.artistid, {preserveSnapshot: true});
this.artistitems.subscribe(snapshot => {
this.artistvalues = snapshot.val();
this.artistitemsid = this.artistvalues.releases;
console.log(this.artistitemsid)
});
artistitemsid 在控制台中的输出
aroundthefur:Object
b-sides&rarities:Object
diamondeyes(deluxe):Object
gore:Object
koinoyokan:Object
saturdaynightwrist(explicitversion):Object
thestudioalbumcollection:Object
数据库
我尝试放入 component.html 的所有内容都崩溃了,我真的不知道如何从对象中获取值而不是获取对象本身
当我的 component.html 中有这个时
<ul>
<li *ngFor="let item of artistitemsid">
{{ item.value }}
</li>
</ul>
我收到此错误
内联模板:8:12 原因:找不到“object”类型的不同支持对象“[object Object]”。 NgFor 只支持绑定到 Arrays 等 Iterables。
【问题讨论】:
-
对象是否在对象数组中?所以你需要用 *NgFor 迭代你的 html 组件
-
当我删除 html 中的 .value 时,我确实发布了错误,但收到了同样的错误
-
试试这个,告诉我你得到了什么
- {{ item | json}}
-
同样的错误已经尝试过了
-
检查我关于将对象值推送到数组的答案
标签: angular firebase firebase-realtime-database angularfire observable