编辑:添加了错误^^ !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
当我加载网页时,它只是一个空白页。想知道如何正确构造它,如果不清楚,请告诉我
答案 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')
...