我尝试在类框架应用程序中使用观察器,但观察器中的方法未被识别为方法。
data () {
return {
education: { degree:'test' },
type: 2
}
},
watch: {
type: (newType) => {
if (newType === 1) {
this.removeDegree()
}
}
},
methods: {
removeDegree () {
this.education.degree = ''
}
}
我希望调用removeDegree,但是,抛出警告和错误,表明removeDegree不是函数。
参考:VueJS:观察者
**解决方案:**使用@docnoe建议的速记es6语法
watch: {
type (newType) {
if (newType === 1) {
this.removeDegree()
}
}
},
...
1条答案
按热度按时间58wvjzkj1#
@Belmin Bedak已经在评论中回答了:在“type”上与手表一起使用的箭头函数会中断对“this”的引用。请改用普通函数。
固定代码:
Codepen