0

我正在尝试根据组件数据设置firebase节点的动态绑定,就像这样

export default {
  name: 'data',
  props: {
    api: {
      type: String
    },
    section: {
      type: String
    }
  },
  firebase: {
    apiData: { 
      source: (console.log('source', this.api), db.ref(this.api)),
      asObject: true
    }
  },  
  updated: function() {
    console.log('updated', this.api, this.section)
  },
  created: function() {
    console.log('created', this.api, this.section)
  }
}

我的问题是,触发了更新事件,但没有触发 apiData 源更新。

使用 vuefire 执行此操作的正确方法是什么?

4

1 回答 1

0

在阅读了一些 vuefire 文档之后,我想出了 watch 解决方案

data: function(){
  return {
    apiData: {}
  }
},
created: function() {
    this.$bindAsObject('apiData', db.ref(this.api))
},
watch: {
  api: function() {
    this.$bindAsObject('apiData', db.ref(this.api))
  }
}
于 2017-12-26T10:15:48.657 回答