可以在Nuxt.js应用中初始化Firebase

Yer*_*nar 4 firebase nuxt.js

我正在用Nuxt.js和编写一个Web应用程序Firebase.我需要在哪个文件中初始化Firebase?换句话说,在哪里放这个代码片段?

var config = {
    apiKey: "xxxxxxxxxx",
    authDomain: "xxxxxxxxx.firebaseapp.com",
    databaseURL: "https://xxxxxxxx.firebaseio.com",
    projectId: "xxxxxxxxx",
    storageBucket: "xxxxxxxxxxx.appspot.com",
    messagingSenderId: "xxxxxxxxxx"
};
firebase.initializeApp(config);
Run Code Online (Sandbox Code Playgroud)

Adr*_*nde 10

firebase.js在文件夹中创建文件plugins

import firebase from 'firebase'
import 'firebase/firestore' //if use firestore

if (!firebase.apps.length) {
  firebase.initializeApp({
    apiKey: "xxx",
    authDomain: "xxx,
    databaseURL: "xxx",
    projectId: "xxx",
    storageBucket: "xxx",
    messagingSenderId: "xxx"
  })
}

firebase.firestore().settings({ timestampsInSnapshots: true })

const db = firebase.firestore()
const storage = firebase.storage() //if use storage

export { storage, db }
Run Code Online (Sandbox Code Playgroud)

在组件中:

import { db } from '~/plugins/firebase.js'

data() {
  return {
    users: []
  }
},
mounted() {
  db.collection("users").get().then((querySnapshot) => {
    this.users = querySnapshot.docs.map(doc =>
      Object.assign({ id: doc.id }, doc.data())
    )
  })
}
Run Code Online (Sandbox Code Playgroud)