首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用vuejs,如何将firebase (vuefire)对象放入组件数据中?

使用vuejs,如何将firebase (vuefire)对象放入组件数据中?
EN

Stack Overflow用户
提问于 2018-03-15 01:03:35
回答 1查看 1.4K关注 0票数 2

使用firebase 4.10.1和vuefire 1.4.5。

我已经确认我已经初始化了firebase,导出了一个db const,并正确地导入了vuefire。

我正在尝试将我的firebase对象(JSON)加载到我的dataTable组件数据中。

我正在尝试这样做:

代码语言:javascript
运行
复制
export default {
    firebase: function () {
       return {
           fbObj: db.ref('collection')
       }
    },
    data () {
        return {
            dataTable: fbObj
        }
    }
 }

它的连接是正确的,因为如果我在模板中使用{{ fbObj }},就会完整地显示JSON对象。但是,如果我试图将它加载到dataTable中,就会得到"fbObj is not defined"作为控制台错误。

如何将firebase对象加载到dataTable上?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-15 02:46:46

守则:

代码语言:javascript
运行
复制
firebase: function () {
   return {
       fbObj: db.ref('collection')
   }
},

创建一个对Vue实例可用的this.fbObj。因此,与dataTable: fbObj不同的是,正确的内容更像是:

代码语言:javascript
运行
复制
data () {
    return {
        dataTable: this.fbObj   // but even this won't work
    }
}

但是那个不能工作,。您不能这样做,因为data()初始化代码将在初始化fbObj之前执行(从防火墙更新它需要一些时间)。

因此,如果希望dataTable引用该集合,则

  • 将firebase对象重命名为dataTable: 函数() {返回{ dataTable: db.ref('collection') } },
  • 创建计算属性: 函数() {返回{ fbObj: db.ref('collection') } },计算:{ dataTable() {返回this.fbObj;}

然后,您可以在Vue实例中使用this.dataTable,在模板中使用JavaScript或dataTable

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49289999

复制
相关文章

相似问题

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