无法读取未定义的 属性 'ref'

Cannot read property 'ref' of undefined

我正在使用 Vue + Firebase + Vuefire 构建一个简单的 Web 应用程序,当我尝试在组件中使用我的 Firebase db 变量时,我得到 "Uncaught TypeError: Cannot read property 'ref' of undefined"

在main.js

Vue.use(VueFire)

const firebaseApp = Firebase.initializeApp({ //setting })

// Export the database for components to use.
export const db = firebaseApp.database()

在我的组件中

// in Recipes.vue
import {db} from '../main.js'

export default {
  recipe: {
    source: db.ref('recipes')
    // Console says: "Uncaught TypeError: Cannot read property 'ref' of undefined"
  }
}

我遵循了本教程中的步骤https://alligator.io/vuejs/vuefire-firebase/

如果在 main.js 中使用此代码 db.ref('recipes') 可以工作,但是一旦我将它导入到我的组件中就永远不会工作。

.ref是一个firebase函数,需要导入。尝试

import Firebase from 'firebase'

import * from 'firebase'

问题是我的 Firebase 代码(包括 db 变量)在 main.js 中,但它需要在它自己的组件中。我创建了一个 firebase.js 文件:

import Firebase from 'firebase'

const firebaseApp = Firebase.initializeApp({
  # configuration
})

// Export the database for components to use.
export const db = firebaseApp.database()

然后在我的组件中我简单地导入了我的数据库变量:

import {db} from '../firebase'

为什么它在 main.js 中不起作用?我不确定,也许有知识的人可以回答。