javascript - Vue-火力地堡 : How to connect to 2 firebases from the same app

标签 javascript firebase firebase-realtime-database vue.js

我在同一个项目上有两个 firebase,我需要连接到它们。

有两个 javascript 文件连接到每个 firebase,这看起来没问题。

我都导入了

  import db from '../FireBase'
  import mdb from '../MissionFireBase'

  let MissionRef = mdb.ref('mission');
  let TeamRef = db.ref('Teams');
  let StartRef = db.ref('start');

db 是一个 firebase 的导出,而 mdb 是另一个的导出。它们中的每一个本身都可以工作,但是当我尝试同时使用它们时,我得到了一个错误

index.cjs.js?3b8b:360 Uncaught FirebaseError {code: "app/duplicate-app", message: "Firebase: Firebase App named '[DEFAULT]' already exists (app/duplicate-app).", name: "[DEFAULT]", stack: "[DEFAULT]: Firebase: Firebase App named '[DEFAULT]…0)↵    at fn (http://localhost:8080/app.js:89:20)"}

对我来说,似乎某个地方的 firebase 获得了默认 ID,当尝试同时使用它们时会发生冲突。我尝试从不同的 vue 组件调用每一个,但我得到了相同的结果。

Firebase 连接是这样建立的

import Firebases from 'firebase'

let config = {

  apiKey: "--",
  authDomain: "--",
  databaseURL: "--",
  projectId: "--",
  storageBucket: "--",
  messagingSenderId: "--"

};

let apps= Firebases.initializeApp(config);
let mdb = apps.database();

export default mdb

这可能吗?我可以使用两个不同的 firebase 调用还是需要将它们合并在一起?

谢谢

最佳答案

这绝对有可能。您需要为每个创建单独的 FirebaseApp 实例,然后从中获取您的数据库。

var secondaryAppConfig = {
    apiKey: "<API_KEY>",
    authDomain: "<PROJECT_ID>.firebaseapp.com",
    databaseURL: "https://<DATABASE_NAME>.firebaseio.com",
    storageBucket: "<BUCKET>.appspot.com",
};
// Initialize another app with a different config
var secondary = firebase.initializeApp(secondaryAppConfig, "secondary");

// Retrieve the database.
var secondaryDatabase = secondary.database();

有关这方面的更多信息,请查看 using multiple projects in your application 部分在 Firebase 文档中。

关于javascript - Vue-火力地堡 : How to connect to 2 firebases from the same app,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50876214/

相关文章:

swift - 如何向 Firebase 数组添加另一个键/值

javascript - 对象引用问题

javascript - 使用 javascript 幻灯片时,Internet Explorer 不需要的图像伪影

javascript - 使用重定向时,我的状态不会更新,所以我从不重定向

android - 从服务器向安装应用程序的用户群发送通知

ios - Firebase 查询结果 SWIFT 上的奇怪行为

javascript - Javascript 中的 OOP 原型(prototype)和继承

java - DataSnapshot 无法创建自定义对象

ios - Firebase Swift语法

java - 如何在 firebase 数据库上的某个日期之后删除子节点?