2017-05-06 54 views
1

我试图从Firebase获取所有数据。 我已通过身份验证的用户成功登录,并且我还从Firebase获取了用于检索其他信息的响应。无法读取来自Firebase对象的所有数据

我在这里附上我的回复。 enter image description here

当我尝试读取ADDINFO,地址,类别, 我得到了一个未定义但是当我尝试在那个时候,我得到它读取的$ id。

所以,我只能获得$ id,我无法阅读其他细节。

$scope.loggedInUserData = addOffersService.getBusinessDetails(idd,""); 

现在,当我使用:

console.log($scope.loggedInUserData) 

然后我得到的所有细节。

但是,当我想读

console.log($scope.loggedInUserData.addInfo); 
console.log($scope.loggedInUserData.address); 

我得到了一个未定义。

function getBusinessDetails(id,path) { 
     var query = db.child('/business/'+id+'/'+path); 
     return $firebaseObject(query); 
    } 

响应有什么问题?

+0

你可以分享你的数据库结构体 ? –

回答

0

数据是从Firebase数据库异步加载的。这意味着当getBusinessDetails()返回时,数据尚未完成加载。因此,当数据尚未加载时,您将记录该对象。

当您登录$scope.loggedInUserData时,JavaScript控制台知道您正在记录整个对象并确保它在加载完成时更新。

但是,当您登录$scope.loggedInUserData.addInfo时,没有值记录。所以你在这种情况下看到undefined

我建议你阅读更多关于此这里:

相关问题