尝试将Firebase配置导入我的Vue文件

时间:2019-05-05 20:07:02

标签: javascript firebase vue.js

编辑:添加了错误^^ !https://i.imgur.com/72x6LQX.png

firebase.js?5b23:11 Uncaught TypeError: app.database is not a function
at eval (firebase.js?5b23:11)
at Object../src/components/firebase/firebase.js (app.js:3496)
at __webpack_require__ (app.js:679)
at fn (app.js:89)
at eval (selector.js?type=script&index=0!./src/components/front-end/Getstarted.vue:3)
at Object../node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/front-end/Getstarted.vue (app.js:2791)
at __webpack_require__ (app.js:679)
at fn (app.js:89)
at eval (Getstarted.vue?5f4d:1)
at Object../src/components/front-end/Getstarted.vue (app.js:3552)

因此,我尝试将Firebase代码放入我在其中使用的.vue文件以外的其他文件中。它的工作原理就像应该将其放入vue文件中一样,因此没有问题。但是我似乎无法弄清楚如何正确地做到这一点。

<script>
import Firebase, { functions } from 'firebase'
import conf from '../firebase/firebase'

let config = {
    apiKey: ''
    authDomain: ''
    databaseURL: ''
    projectId: ''
    storageBucket: ''
    messagingSenderId: ''
}

let app = Firebase.initializeApp(config)
let db = app.database()

let booksRef = db.ref('books')
(dashboard.Vue)

*这就是我的Vue文件中的样子*

我有2个javascript文件 一个:

import config from './firebaseConfig'

class Firebase {
  constructor () {
    firebase.initializeApp(config)
  }
}

let db = app.database()

let booksRef = db.ref('books')

export default Firebase()
(firebase.js)

和一个:

let config = {
  apiKey: '',
  authDomain: '',
  databaseURL: '',
  projectId: '',
  storageBucket: '',
  messagingSenderId: '',
  appId: ''
}

export default (config)
(firebaseConfig.js)

我的文件夹结构如下:

components
|firebase
||firebase.js
||firebaseConfig.js
|backend
||Dashboard.vue

当我加载网页时,它只是一个空白页。想知道如何正确构造它,如果不清楚,请告诉我

1 个答案:

答案 0 :(得分:0)

在下面的行中,您尚未声明变量app,因此它是undefined

let db = app.database()

您可以将firebase.js更改为

import firebase from 'firebase'
import config from './firebaseConfig'

const app = firebase.initializeApp(config)
let db = app.database()

export default db

以及您的组件

import db from './firebase.js'
let booksRef = db.ref('books')
...