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,实际上=》会找到他的上下文的父类。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM