美文网首页
vuex中 使用computed 监听报错 ‘was assig

vuex中 使用computed 监听报错 ‘was assig

作者: Yyyyyyyyyujie | 来源:发表于2020-08-20 16:50 被阅读0次

    监听Vuex中的数据变换 使用computed

    //利用计算属性
      computed: {
       pid:{
         get() {
          return this.$store.getters.getGameInfo.pid
         }
       }
      },
      //监听执行
      watch: {
        pid(val) {
        //这是监听回调
        }
    
    

    结果提示报错
    Computed property " pid" was assigned to but it has no setter.

    解决方法
    • 手动设置get,set方法
    computed: {
      route: {
        pid(){
          return this.$store.getters.getGameInfo.pid
        },
        set(val){}
      }
    }
    
    • 直接写function就不需要手动设置set,get方法
    computed: {
      pid: function () {
        return this.$store.getters.getGameInfo.pid
      }
    }
    

    如果使用mapGetters

    computed: {
        ...mapGetters([
          'pid'
        ])
      },
    

    \color{red}{需要注意出现这个错误的原因是,这个}computed\color{red}{变量一定在某个地方使用了类似 }this.pid=xxx\color{red}{的赋值操作,包括} v-model\color{red}{这种绑定操作.}

    我报错就是这个问题 我在watch里赋值了


    相关文章

      网友评论

          本文标题:vuex中 使用computed 监听报错 ‘was assig

          本文链接:https://www.haomeiwen.com/subject/riqejktx.html