admin.firestore 表示一个 Firestore 实例,但是这个实例没有被初始化。它仅仅是一个 JavaScript 对象,它包含了一些函数和属性。这意味着你不能在这个对象上执行任何 Firestore 操作。
admin.firestore() 返回一个已经初始化的 Firestore 实例。这个实例可以被用来进行 Firestore 操作。
getFirestore() 是一个函数,它返回一个本地实例的引用。这个函数需要在云函数中调用。它将检查当前运行的上下文并返回相应的实例。
下面是一个示例代码,展示如何使用这三个选项:
const admin = require('firebase-admin'); admin.initializeApp();
// 获取一个 admin.firestore 实例 const firestoreInstance = admin.firestore;
// 获取一个已初始化的 Firestore 实例 const firestore = admin.firestore();
// 获取本地 Firestore 实例的引用 const getFirestore = () => { if (process.env.NODE_ENV === 'production') { return admin.firestore(); } else { const { Firestore } = require('@google-cloud/firestore'); return new Firestore({ projectId: 'my-test-project' }); } };
const localFirestore = getFirestore(); console.log(localFirestore);
上一篇:admin.Firebase.Timestamp时间比实际时间早7小时的问题
下一篇:admin.firestore.Timestamp.now()和admin.firestore.FieldValue.serverTimestamp()之间有什么区别?