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