首页 > 解决方案 > Firebase 数据库参考快照未返回任何数据

问题描述

我正在尝试读取一些已放入 Firebase 数据库的虚拟数据,但尽管尽力遵循文档,但无法让它返回任何内容。

我有一个初始化 Firebase 的 JS 文件,并导出了这个变量:

const database = firebase.database();

在我试图读入的文件中,我有以下内容:

import database from './firebase';
const dbRef = database.ref('users/');
dbRef.on('value', (snapshot) => {
  console.log(snapshot.val());
});

没有任何东西被登出到控制台。但是当我只注销 dbRef 时,我得到了 Reference 对象,所以它似乎连接正确:

Reference {repo: Repo, path: Path, queryParams_: QueryParams, orderByCalled_: false}
database: (...)
key: (...)
orderByCalled_: false
parent: (...)
path: Path {pieces_: Array(1), pieceNum_: 0}
queryParams_: QueryParams {limitSet_: false, startSet_: false, startNameSet_: false, endSet_: false, endNameSet_: false, …}
ref: (...)
repo: Repo {repoInfo_: RepoInfo, app: FirebaseAppImpl, dataUpdateCount: 0, statsListener_: null, eventQueue_: EventQueue, …}
root: (...)
__proto__: Query

我找不到哪里出错了,非常感谢您的帮助。在我的 Firebase 控制台中,我默认使用 Cloud Firestore 而不是实时数据库,不确定这是否有所不同。

标签: javascriptfirebasegoogle-cloud-firestore

解决方案


您正在尝试使用实时数据库 API 而不是 Firestore API。它们根本不是同一个数据库,也不共享相同的 API。使用Firestore 文档开始。您将使用firebase.firestore()而不是firebase.database(). Firestore 的 API 文档从这里开始


推荐阅读