Vue.js 基于插件值的Vue计算属性

Vue.js 基于插件值的Vue计算属性,vue.js,plugins,reactive,computed-properties,Vue.js,Plugins,Reactive,Computed Properties,实际上,我正在通过将vue应用程序集成到插件中来重构它,但我面临一个有关计算数据的问题 我试图做的是针对插件中被计算属性修改的数据,但问题是vue不针对数据的更改 这是我的问题的一个非常简单的例子 插件 install(Vue) { Vue.prototype.$myPlugin= { data: 0, setValue(val) { this.data = val } } } 组件(即使修改了值,也不要记录) 我知道某些vue数据出于某种原因不是

实际上,我正在通过将vue应用程序集成到插件中来重构它,但我面临一个有关计算数据的问题

我试图做的是针对插件中被计算属性修改的数据,但问题是vue不针对数据的更改

这是我的问题的一个非常简单的例子

插件

install(Vue) {
  Vue.prototype.$myPlugin= {
    data: 0,

    setValue(val) {
      this.data = val
    }
  }
}
组件(即使修改了值,也不要记录)

我知道某些vue数据出于某种原因不是被动的,但我真的需要了解如何使我的插件成为被动的


提前感谢您的帮助

您需要使用以下方法明确地使数据反应:

Vue.prototype.$myPlugin=Vue.observable({
数据:0,
设定值(val){
this.data=val
}
})

您需要使用以下方法明确地使数据反应:

Vue.prototype.$myPlugin=Vue.observable({
数据:0,
设定值(val){
this.data=val
}
})

哦,谢谢你,伙计!它起作用了!现在我知道诀窍了哈哈,谢谢你!它起作用了!现在我知道诀窍了哈哈
computed: {
  reactiveData() {
    return this.$myPlugin.data1
  }
},
watch: {
  reactiveData() {
    console.log('Value changed')
  }
},
mounted() {
  this.$myPlugin.setValue(32)
  this.$myPlugin.setValue(64)
}