vue watch的this 到底是什么?
正文
watch: {
value: (newV, oldV) => {
this.a = newV;
}
}
加入该vue对象中,data 有:
{
data:{
a:5
}
}
那么请问,如果value 修改值为6,这时候a的值是否为6?
答案:
不是的。
原因
因为这个时候watch使用的是=>,是箭头函数,那么这时候的this,其实是window对象,而不是当前vue 对象。
需要这样写:
watch: {
value: function(newV, oldV) {
this.a = newV;
}
}
官方给出的答案是:
ok,实际上=》会找到他的上下文的父类。