将导出的Firebase用作全局对象是否安全?

时间:2019-06-19 13:07:13

标签: javascript firebase firebase-authentication

我和团队进行了讨论。我们正在谈论应该导出Firebase对象以在ReactJS项目中的任何地方使用,还是必须使用Redux来存储firebase对象。

我尝试使用export语句,并且工作正常。

import * as firebase from "firebase";

firebase.initializeApp({
  apiKey: "xxxx",
  authDomain: "xxxxx",
  projectId: "xxx"
});

const firestore = firebase.firestore();

export { firebase, firestore };

如果我将Firebase存储在状态管理中,或者这种方法足够好,那会更好。

1 个答案:

答案 0 :(得分:0)

我不是React开发人员,但我在Vue中使用了Firebase。我知道这两个是完全不同的框架,但也许这种情况对您有帮助。

我在Vue中安装了Firebase插件(全局)。然后,我使用状态管理来存储例如登录状态。

安装后(如下):

import VueFire from 'vuefire'

Vue.use(VueFire)

new Vue({
  store,
  render: h => h(App)
}).$mount('#app')

我使用Firebase参考来访问它,例如:

methods: {
    addToDb: function () {
        this.$firebaseRefs.data.child('count').set(1);
    }
}

所以,我想在您的情况下,导出就可以了。