firebase - Firestore - 如何使用 DocumentReference 指向另一个项目的文档?
问题描述
据我所知firebase.firestore.DocumentReference<T>
可以指向当前项目中的一个文档。是否可以指向另一个项目的文档?
拥有这样的能力是合理的,因为 Firebase 已经写了一个文档来分享如何在一个应用程序中使用多个项目。
解决方案
是否可以指向另一个项目的文档?
对的,这是可能的。以下代码显示了如何使用一个主要项目的 Firestore 数据库中的值来查询辅助项目的 Firestore 数据库。
var primaryAppConfig = {
apiKey: 'xxxx',
authDomain: 'xxxx',
projectId: 'xxxx'
};
var secondaryAppConfig = {
apiKey: 'xxxx',
authDomain: 'xxxx',
projectId: 'xxxx'
};
// Initialize primary app
var primary = firebase.initializeApp(primaryAppConfig, 'primary');
// Initialize a secondary app with a different config
var secondary = firebase.initializeApp(secondaryAppConfig, 'secondary');
var db1 = primary.firestore();
var db2 = secondary.firestore();
const db2DocRef = db2.collection('col1').doc('doc1');
let getDoc = db2DocRef
.get()
.then(doc => {
const valToUse = doc.data().value;
const db1DocRef = db1.collection('col1').doc(valToUse);
return db1DocRef.get();
})
.then(doc => {
console.log(doc.data());
});
有这样的能力合理吗?
我想是的,因为正如您所提到的,Firebase 提供了这种可能性。
推荐阅读
- java - 任务 ':app:compileDebugJavaWithJavac' 执行失败。在运行 React Native 项目时
- css - 在 Sass 中附加一个值
- ruby-on-rails - 通过添加日期和数字范围来创建唯一数字
- html - 如何在css网格中显示图像?
- file - 限制对一个程序的文件夹/文件访问?
- microsoft-graph-api - MS Graph [V1.0]:$orderBy 完全忽略 $skip 参数
- ios - 如何在 iOS swift 中的 ARSCNView 中显示 uicollection 视图
- ruby-on-rails - 对象的Rspec未定义方法“期望”
- node.js - 第一次Nodejs问题
- c# - 嵌套的 For 循环不打印