angular - 如何访问对象的数据?
问题描述
我有一个从 Firebase 读取数据的函数。我可以读取对象但不能读取属性。
我尝试解析内容,但出现错误。
这是功能:
this.afAuth.authState.subscribe(data => {
this.itemsList = this.afDatabase.list(`oders/${data.uid}`).valueChanges();
console.log(this.itemsList)
this.itemsList.forEach(data =>{
console.log(data) // this work
console.log(data.name) // this doesn't work (undifined in console)
})
})
我的JSON OBJECT
(14) [{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}]
0: {hour: 1567395936608, id: 0, name: "Salami", price: "8"}
1: {hour: 1567395936608, id: 9, name: "Suplémment Fromage", price: "8"}
2: {hour: 1567395936608, id: 4, name: "bolo", price: "8"}
3: {hour: 1567395936608, id: 4, name: "bolo", price: "8"}
4: {hour: 1567395985542, id: 4, name: "bolo", price: "8"}
5: {hour: 1567395985542, id: 0, name: "Salami", price: "8"}
6: {hour: 1567395985542, id: 9, name: "Suplémment Fromage", price: "8"}
7: {hour: 1567397849623, id: 6, name: "Dems", price: "15"}
8: {hour: 1567397849623, id: 0, name: "Salami", price: "8"}
9: {hour: 1567397849623, id: 9, name: "Suplémment Fromage", price: "8"}
10: {hour: 1567398309241, id: 0, name: "Salami", price: "8"}
11: {hour: 1567398309241, id: 9, name: "Suplémment Fromage", price: "8"}
12: {hour: 1567402336588, id: 0, name: "Salami", price: "8"}
13: {hour: 1567402336588, id: 9, name: "Suplémment Fromage", price: "8"}
谢谢!
解决方案
由于data
本身是一个数组,因此您需要运行另一个循环
试试这样:
this.itemsList.forEach(data =>{
this.data.forEach(e=>{
console.log(e.name)
})
})
或者你可以这样做:
this.itemsList[0].forEach(data =>{
console.log(data.name)
})
推荐阅读
- android - 使用 Android NDK 构建的简单方法
- github - Github api标签未创建
- javascript - 如何选择下拉
- android - 如何在所选底部导航的顶部边缘获得曲线?
- video-streaming - 如何将 VP9 webm、h264 MP4 和 h265 MP4 嵌入到单个视频标签中?
- r - 如何在 dplyr 管道中安全地使用 do.call()
- java - 如何在表单构建器中的表单提交上发布休息 Api
- python - 损失在 Google App Engine 上没有减少,但在 Jupyter Notebook 上却减少了
- smt - 有没有办法通过 CVC4 C++ API 解析 SMT-LIB2 字符串?
- node.js - Node js文件上传问题