我正在尝试将 vuejs 中的计算属性关联到 es6 类。我的 Vue 实例如下所示:
...
props: ['customClass'],
computed: {
localClass: {
get() {
return this.customClass
},
set (value) {
console.log("changed")
}
}
}
...
我的课看起来像这样
class CustomClass {
constructor () {
this.selected = false
}
}
如果我尝试做这样的事情:
this.localClass.selected = true
但是 setter 从来没有被调用过,就像失去了反应一样,我不明白为什么。
我也尝试:
Vue.set(this.localClass, 'selected', true)
我将 customClass 作为道具传递,但即使直接在组件中创建新实例也不会改变结果。
在 vuejs 文档中,我不记得有一节讨论过 es6 类中的反应性问题,所以我想知道是否有人知道为什么以及如何使我的类具有反应性。
提前致谢