【问题标题】:FIREBASE: getting null while fetching the data from databaseFIREBASE:从数据库中获取数据时为空
【发布时间】:2020-10-10 11:06:13
【问题描述】:

附上firebase db结构截图。

我想使用节点脚本获取数据。下面是我的代码。

var db = admin.database();
var ref = db.ref("test/name");

console.log(ref)

ref.on("value", function(snapshot) {
    console.log("==========");
  console.log(snapshot.val());
}, function (errorObject) {
  console.log("The read failed: " + errorObject.code);
});

console.log(snapshot.val()); 总是打印 null

下面是console.log(ref)的结果

path: Path { pieces_: [ 'test', 'name' ], pieceNum_: 0 },
  queryParams_: QueryParams {
    limitSet_: false,
    startSet_: false,
    startNameSet_: false,
    endSet_: false,
    endNameSet_: false,
    limit_: 0,
    viewFrom_: '',
    indexStartValue_: null,
    indexStartName_: '',
    indexEndValue_: null,
    indexEndName_: '',
    index_: PriorityIndex {}
  },

代码中有什么问题? 参考本文档:https://firebase.google.com/docs/reference/js/firebase.database.DataSnapshot

【问题讨论】:

    标签: javascript firebase firebase-realtime-database google-cloud-firestore


    【解决方案1】:

    您使用的是firestore,但您的代码是用于实时数据库的,您需要将代码更改为以下内容:

    var db = admin.firestore();
    var ref = db.doc("test/name");
    
    console.log(ref)
    
    let getDoc = ref.get()
      .then(doc => {
        if (!doc.exists) {
          console.log('No such document!');
        } else {
          console.log('Document data:', doc.data());
        }
      })
      .catch(err => {
        console.log('Error getting document', err);
      });
    

    https://firebase.google.com/docs/firestore/query-data/get-data

    【讨论】:

      猜你喜欢
      • 2019-01-17
      • 1970-01-01
      • 2019-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-04
      • 2020-12-22
      • 2019-07-10
      相关资源
      最近更新 更多