Js-不能在组件上使用Firebase函数

Js-不能在组件上使用Firebase函数,firebase,vue.js,vuejs2,firebase-storage,Firebase,Vue.js,Vuejs2,Firebase Storage,我使用Vue资源将数据从我的web应用发布到firebase。但后来,我发现我需要使用firebase集成在firebase存储中上传图像。所以我将它集成到我的src/main.js中 从“Vue”导入Vue 从“vue资源”导入VueResource 从“vue路由器”导入VueRouter 从“firebase”导入*作为firebase 从“./App.vue”导入应用程序 从“/Routes”导入路由 Vue.use(VueResource); Vue.use(VueRouter);

我使用Vue资源将数据从我的web应用发布到firebase。但后来,我发现我需要使用firebase集成在firebase存储中上传图像。所以我将它集成到我的src/main.js中

从“Vue”导入Vue
从“vue资源”导入VueResource
从“vue路由器”导入VueRouter
从“firebase”导入*作为firebase
从“./App.vue”导入应用程序
从“/Routes”导入路由
Vue.use(VueResource);
Vue.use(VueRouter);
常量路由器=新的VueRouter({
路线:路线,,
模式:“历史”
});
新Vue({
el:“#应用程序”,
渲染:h=>h(应用程序),
路由器:路由器,,
创建(){
firebase.initializeApp({
apiKey:“Aizasydhdehclpgqo5_msnhVKWH9BkZNOc6RYw”,
authDomain:'nots-76611.firebaseapp.com',
数据库URL:'https://nots-76611.firebaseio.com',
projectId:‘nots-76611’,
storageBucket:'gs://nots-76611.appspot.com'
})
}

})
您似乎没有使用VueFire,我相信它通过Vue原型属性将firebase公开为$firebase。但是,您可以自己手动完成

import Vue from 'vue'
import VueResource from 'vue-resource'
import VueRouter from 'vue-router'
import * as firebase from 'firebase'
import App from './App.vue'
import Routes from './routes'

Vue.prototype.$firebase = firebase
在此之后,firebase将在每个Vue或组件中作为
this.$firebase
提供

methods: {
    post: function(){
        this.$firebase.database().ref() ... etc ...
    }
}

只需将其导入任何需要使用的文件中即可<代码>从“firebase”导入firebase。您没有将其与vue集成,只是使用了引用
vue fire
将为您集成它。Hi@Bert-典型的
firebase.initializeApp({})
code将去哪里?它会在
Vue.prototype.$firebase=firebase
之前吗?@JoeManFoo在大多数情况下,是的,您会在Vue外部或根Vue创建的处理程序中初始化firebase。以下是VueFire的一个示例: