Vue JS中未定义Firebase

时间:2019-08-17 18:36:06

标签: firebase vue.js vuejs2

我正在尝试将Firebase导入我的Vue JS CLI项目。我已经通过npm安装了Firebase,并将其导入到我的main.js文件顶部,如下所示:

import Vue from 'vue';
import firebase from 'firebase';

然后我使用自己的配置初始化Firebase:

let config = {
  ...
};

firebase.initializeApp(config);

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

我有一个src/views/Register.vue组件,该组件有一个方法可以注册用户并将其详细信息存储在Firebase中,但是,每次该方法运行时,都会告诉我firebase是未定义的。

我在网上一直遵循许多指南,并且它继续以未定义的形式返回?

我的方法:

register() {
      firebase.auth().createUserWithEmailAndPassword(this.email, this.password).then(
        function (user) {
          alert('Account created')
        },
        function (err) {
          alert('Error:' + err.message)
        }
      )
    }

确切的错误是:ReferenceError: firebase is not defined,有人可以告诉我我所缺少的吗?

作为参考,我的package.json文件包含:"firebase": "^6.4.0"

2 个答案:

答案 0 :(得分:0)

由于您正在使用firebase,因此必须在组件上firebase/auth导入auth()

src/views/Register.vue上:

<script>
   import firebase from "firebase/app";
   import "firebase/auth";
   export default {....

答案 1 :(得分:0)

请查看this教程。