【问题标题】:vuex + vuexfire - store objects would not update upon adding datavuex + vuexfire - 添加数据时存储对象不会更新
【发布时间】:2020-06-18 17:40:06
【问题描述】:

在下面的代码中,在我更新字段集合后它不会 更新“this.fields”(通过以下方式绑定到 store.js 中的 tha 集合 vuexfire 规则) - 仅当我刷新页面时。请帮忙。谢谢

var newField = {
      name: this.fieldName,
      area: this.fieldArea,
      farmId: this.farmId
    }

    var docRef = fb.field.doc()
    docRef.set(newField)
    var id = docRef.id

    console.log(id)
    fb.field
      .doc(id)
      .get()
      .then(ref => {
        this.$store.commit('updateCurrentField', ref.data())
      })

【问题讨论】:

    标签: vue.js vuex vuexfire


    【解决方案1】:

    您如何以及在何处获得 this.fields?

    它是计算属性吗?

    为了保持数据更新(vuex documentation)

    computed: {
     fields() {
       this.$store.state.fields
     }
    }
    

    【讨论】:

    • 嗨,感谢您的帮助。我正在使用这样的地图获取器来获取它: ...mapGetters([fields]) 在计算中,在 store.js 中它看起来像这样:fields: state => { return state.fields },
    • 你使用 vue 开发工具吗?商店是否在 devtools 中保持更新?
    • 我通过在我创建的新对象中设置文档 ID 使其工作,然后我将其添加到 Firestore。这很奇怪,但它是这样工作的..还是谢谢! =)
    猜你喜欢
    • 2021-11-13
    • 2019-09-10
    • 1970-01-01
    • 2019-10-19
    • 2019-10-05
    • 1970-01-01
    • 2021-07-02
    • 2017-03-23
    • 2018-06-14
    相关资源
    最近更新 更多