在 Nuxt.js 应用中初始化 Firebase 的地方

Posted

技术标签:

【中文标题】在 Nuxt.js 应用中初始化 Firebase 的地方【英文标题】:Place to initialize Firebase in Nuxt.js app 【发布时间】:2018-10-07 10:55:33 【问题描述】:

我正在用Nuxt.jsFirebase 编写一个网络应用程序。我需要在哪个文件中初始化Firebase?也就是说,这段代码sn-p放在哪里?

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

【问题讨论】:

【参考方案1】:

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

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 

在组件中:

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())
    )
  )

【讨论】:

以上是关于在 Nuxt.js 应用中初始化 Firebase 的地方的主要内容,如果未能解决你的问题,请参考以下文章

Vue.js 和 Nuxt.js 中的 Firebase 存储 CORS 错误

Nuxt JS 未定义 Firebase 存储 XMLHttpRequest 错误

带有 Firebase 的 Nuxt.js s-s-r - ReferenceError:未定义导航器

Nuxt学习笔记

json Nuxt.js Firebase

在 Nuxt JS vuex 中使用 Vue Router 重定向