Firestore文档的链接列表

时间:2019-03-31 16:38:26

标签: firebase google-cloud-firestore

我有一个用例来制作文档的链接列表,例如 {name,next_ptr}和next_ptr是对另一个文档的引用

我有以下代码,但正在获取next_ptr,但没有得到属于next_ptr的字段

我正在关注输出

KkkGTTKjuwcGmzJzQ3Wa => FIRE => undefined

iW9lm7sYkgvuZPdVvrZE => GAS => undefined

NtTyJNjqIT79PZ6zkqtY => WATER => undefined

预期产量

KkkGTTKjuwcGmzJzQ3Wa => FIRE => GAS

iW9lm7sYkgvuZPdVvrZE => GAS => WATER

NtTyJNjqIT79PZ6zkqtY => WATER => undefined

代码


db = defaultApp.firestore() ;


abc_collection = db.collection("abc") ;

abc_collection.get() 
.then( data => {
  data.forEach(item => {
    console.log(item.id , "=>", item.get('name')) ;

next_ref = item.get('next_ptr') ;
    next_ref.get("name").then(item => {
      console.log(item) ;
    }).catch("") ;

  } ) ;
}).catch("") ;

enter image description here

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

您似乎假设查询结果包含所有引用的文档:

item.get('next_ptr')['name']

item.get('next_ptr')返回的是一个DocumentReference对象,而不是文档的全部内容。您必须使用其get()方法来查询该文档以加载其内容,或者在查询的结果中使用其ID查找该文档(如果您保证引用始终指向同一文档)集合。

如果您不想处理DocumentReference,则最好存储文档的字符串ID。