当v-model遇上vuex时报错

场景:当我们v-model的数据是存储在vuex中时写法如下时会报错

computed:{
  editableTabsValue2:{
     return this.$store.state.activeName
  }
}

报错:Computed property  "editableTabsValue2"  was assigned  to but  it has no  setter

原因:v-model是双向数据绑定 vue实例的data改变或者用户输入的改变都会触发视图更新。vuex是一个状态的存储,对于里面的状态的改变都是通过commit mutation 所以当用户输入直接修改editableTabsValue2,又不是通过commit更改状态时会报错

解决方法:

computed:{
  editableTabsValue2:{
    get:function () {
      return this.$store.state.activeName
    },
    set:function () {
    }
  }
}

 

你可能感兴趣的:(vue填坑之路)