使用 get/set Computed 属性 with mapState, mapMutation in Vuex

Using get/set Computed property with mapState, mapMutation in Vuex

我使用名为 main 的 Vuex 模块计算了以下 属性:

computed: {
  foo: {
    get(){
      return this.$store.state.main.foo;
    },
    set(value) {
      this.$store.commit("main/foo", value);
    }
  }
}

我想使用 get/set 模式,因为我想使用 v-model="foo"。必须直接与 $store 交谈非常冗长。使用 mapStatemapMutation 甚至 createNamespacedHelpers 是否有更简单的方法?

我建议您尝试 vuex-map-fields 模块,其中包含一个 mapFields 帮助程序方法,可帮助您设置 getter 和 setter 动态。