javascript - 无法创建全局 vue 变量(Vue.prototype.$firebase)

标签 javascript firebase vue.js firebase-authentication

我在 login.vue 中提交表单,它将调用 submit()。然后我在 Web 控制台中遇到以下错误。

Uncaught TypeError: Cannot read property 'auth' of undefined

ma​​in.js

import Vue from 'vue'
import App from './App'
import router from './router'
import * as firebase from 'firebase/app'
import { firebaseConfig } from '@/firebaseConfig';

Vue.prototype.$firebase = firebase.initializeApp(firebaseConfig)
Vue.config.productionTip = false

new Vue({
  el: '#app',
  router,
  components: { App },
  template: '<App/>'
})

登录.vue

const authService = {
  methods: {
    submit () {
      this.$firebase.auth().signInWithEmailAndPassword(this.login.email, this.login.pass).then(
        (user) =>{
          this.$router.replace('bm')
        }
      )
    }
  }
}

最佳答案

您还必须:

import 'firebase/auth'

firebase/app 导入之后以获得 Firebase Auth 产品功能。

关于javascript - 无法创建全局 vue 变量(Vue.prototype.$firebase),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57514449/

相关文章:

javascript - 在 iframe 中获取 innerdiv 的 id

firebase - 高效存储和检索点赞

java - QueryListenOptions 的 ClassNotFoundException

node.js - 使用webpack根据node环境使用特定文件

webpack - 使用 vue-cli 将请求代理到单独的后端服务器

javascript - 'inspectedWindow' 的替代方案(不适用于 chrome devtools)

javascript - 只使用一个循环来生成嵌套数组

javascript - ArcGIS 4.8 JS : State is not showing selected when hover or click

firebase - 在 Flutter 中报告错误的最佳实践

javascript - 如何从我的 vue 路由器中的商店/状态访问此变量?