首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在nuxtJs/ firebase中,“无法读取未定义的属性”应用程序

在nuxtJs/ firebase中,“无法读取未定义的属性”应用程序
EN

Stack Overflow用户
提问于 2021-10-05 03:50:09
回答 3查看 445关注 0票数 1

我已经尝试将firebase与Nuxt Js集成,并且我得到了这个错误。

根据文档,我首先在"npm安装防火墙“的帮助下安装了防火墙,然后安装了"npm @nuxtjs/ firebase”,第三,我在nuxt.config.js中的模块中集成了防火墙配置。

那么解决上述错误的解决方案是什么呢?提前感谢

EN

回答 3

Stack Overflow用户

发布于 2021-10-06 08:05:38

这取决于您使用的@nuxtjs/firebase的哪个版本,因为这个包@nuxtjs/firebase与支持树抖动的防火墙版本9+不兼容。

因此,您需要将包降级为firebase版本8及更早版本。

有关更多信息,请查看作者github问题。

票数 1
EN

Stack Overflow用户

发布于 2021-10-08 12:46:49

如果您正在使用新的模块化SDK v9.0.1,您可能会得到上面的错误,因为它现在不使用firebase.命名空间,所以尝试使用getApps()而不是firebase.apps

代码语言:javascript
复制
import { initializeApp, getApps } from "firebase/app" 
import { getFirestore } from "firebase/firestore"
import { getAuth } from "firebase/auth" 
const firebaseConfig = {...} 
if (!getApps().length) {
 //.... 
} 
const app = initializeApp(firebaseConfig) 
const db = getFirestore(app) 
const auth = getAuth(app) export {db, auth}
票数 0
EN

Stack Overflow用户

发布于 2022-08-16 05:02:22

我把头撞到这个问题上有一段时间了--我试图在动态页面中使用实时数据库,并得到了同样的错误。我终于回到了关于firebase模块回购的这个问题。基本上,我必须做两件事:

  1. 使用async asyncData方法,而不是仅仅定义data属性;
  2. 同时使用appparams变量。

所以,不是这样的:

代码语言:javascript
复制
export default {
  data: () => ({
    items: []
  )},
  async fetch ({ params }) {
    const ref = this.$fire.database.ref(`foo/${params.slug}`)
    const data = (await ref.once('value')).val()
    this.items = data
  }
}

我不得不这么做:

代码语言:javascript
复制
export default {
  async asyncData ({ app, params }) {
    const ref = app.$fire.database.ref(`foo/${params.slug}`)
    const data = (await ref.once('value')).val()
    return { items: data }
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69444714

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档