【问题标题】:VuexFire MutationsVuexFire 突变
【发布时间】:2017-03-18 20:20:49
【问题描述】:

对于使用过 VuexFire Vuex v2 的任何人。 mutations: VuexFire.mutations 在这里指的是什么?答案可能很明显,但我不知道这意味着什么。那我的实际突变去哪儿了?我现在正在使用 Vuex v1,它似乎工作正常,但我想升级到使用 Vuex v2。谢谢!

var store = new Vuex.Store({
  state: {
    items: null
  },
  mutations: VuexFire.mutations, // What is this and where is it coming from??
  getters: {
    items: function (state) { return state.items }
  }  
})

new Vue({
  el: '#app',
  store: store,
  computed: Vuex.mapGetters([
    'items'
  ]),
  firebase: {
    items: db.ref('items')
  }
})

【问题讨论】:

标签: vue.js vuex


【解决方案1】:

我自己为此苦苦挣扎了很长时间。虽然我不能 100% 确定 VuexFire.mutations 做了什么,但我现在明白 VuexFire 只负责获取您的 Firebase 数据库数据并使用该数据正确地改变您的应用程序状态。

因此,这似乎是使本地商店的状态突变发生的神奇代码。

为了让您的应用变异/更改 Firebase 数据库,您仍然需要获取 Firebase 数据库引用并自己设置/推送/或任何数据。

例如,使用您的代码进行说明,

firebase: {
    items: db.ref('items')
}

会让mutations: VuexFire.mutations“知道”用什么来改变你的应用状态。但要改变您的 Firebase 数据库,您必须执行以下操作:

db.ref('items').push(WhateverNewData)

我希望这会有所帮助。

【讨论】:

猜你喜欢
  • 2019-11-05
  • 2020-05-11
  • 2018-10-14
  • 1970-01-01
  • 2018-01-14
  • 2019-04-21
  • 2020-03-02
  • 2021-11-08
  • 2017-07-13
相关资源
最近更新 更多