Reactjs 根据环境初始化firebase配置

Reactjs 根据环境初始化firebase配置,reactjs,firebase,Reactjs,Firebase,现在在我的项目中,我有两个独立的firebase配置文件用于测试和prod环境。在构建/部署应用程序时,jenkins将使用适当的配置初始化firebase 现在我想从firebase添加云消息,并在我的单页react应用程序中处理消息。我如何在我的react代码(即App.jsx)中访问初始化的firebase实例 _库/firebase.config.prod.js // Firebase (production) var firebaseConfig = { apiKey: "AIz

现在在我的项目中,我有两个独立的firebase配置文件用于测试和prod环境。在构建/部署应用程序时,jenkins将使用适当的配置初始化firebase

现在我想从firebase添加云消息,并在我的单页react应用程序中处理消息。我如何在我的react代码(即App.jsx)中访问初始化的firebase实例

_库/firebase.config.prod.js

// Firebase (production)

var firebaseConfig = {
  apiKey: "AIzaSyAX...tXE8ZSM",
  authDomain: "aaa.firebaseapp.com",
  databaseURL: "https://aaa.firebaseio.com",
  projectId: "aaa",
  storageBucket: "aaa.appspot.com",
  messagingSenderId: "4246...326",
  appId: "1:4245971.....c50fc5bac008",
  measurementId: "G-XQ...PTBF"
};
// Initialize Firebase
firebase.initializeApp(firebaseConfig);
firebase.analytics();
_库/firebase.config.test.js

// Firebase (default)

var firebaseConfig = {
  apiKey: "AIzaSyAq58Q_Q....8GV6Vs8zAa2DM",
  authDomain: "aaa-test.firebaseapp.com",
  databaseURL: "https://aaa-test.firebaseio.com",
  projectId: "aaa-test",
  storageBucket: "aaa-test.appspot.com",
  messagingSenderId: "9160....111",
  appId: "1:9160372441.....b70e3859d93ba",
  measurementId: "G-4X....BV64"
};
// Initialize Firebase
firebase.initializeApp(firebaseConfig);
firebase.analytics();

让它成为全局还是单例?@DougStevenson我应该如何以及在哪里初始化firebase实例?我认为这是一个意见问题。你试过什么了吗?你搜索过现有的约定吗?我用当前的实现更新了我的问题。但是我无法在我的react代码(App.jsx)中调用
firebase.messaging()
(例如),您是否尝试将firebase实例保存到一个变量,然后导出该变量以导入并在组件或类似组件中使用?您是否有机会搜索react+firebase教程?除了基于环境加载配置之外,几乎所有的配置都有效地显示了相同的策略来初始化和公开firebase以响应组件/存储/上下文。