Vue.js VueJS存储模式与get&;设置

Vue.js VueJS存储模式与get&;设置,vue.js,state,Vue.js,State,我有一个小商店(遵循VueJS(而不是VUEX)上的状态模式) 基本上是这样的 export default { get selectedPartner() { return localStorage.getItem('selectedPartner'); }, set selectedPartner(item) { localStorage.setItem('selectedPartner', item); },

我有一个小商店(遵循VueJS(而不是VUEX)上的状态模式)

基本上是这样的

export default {
    get selectedPartner() {
        return localStorage.getItem('selectedPartner');
    },

    set selectedPartner(item) {

        localStorage.setItem('selectedPartner', item);
    },


    clearFilters() {
        localStorage.removeItem('selectedPartner');
    }
}
在我的.vue组件中,我现在正试图像这样绑定到它

    data: function() {
      return {
        // Other stuff here...
        selectedPartner: filterStore.selectedPartner,
      }
    },
现在,当它绘制组件时,实际上正确地调用了getter。 当我更改组件中的值时,它不会更新存储

我确实意识到这样做(在本地存储中)非常接近VUEX。 但在进入VUEX之前,我们选择了这种方法,首先以最简单的形式掌握状态


非常感谢

使用
计算
而不是
数据

computed: {
  selectedPartner: {
    get() { return filterStore.selectedPartner; },
    set(item) { filterStore.selectedPartner = item; }
  }
}

set selectedPartner
函数是否被调用?不,它不被调用:-(这确实有效,但有点达不到目的。我想在我的存储和我的data()属性之间进行双向绑定。这是不可行的吗?这会带来另一个问题,计算属性被缓存…:(因此,他们不会重新评估更改后的结果