vue的watch的this指向undefined
时间: 2023-09-29 07:03:28 浏览: 131
浅谈vue使用axios的回调函数中this不指向vue实例,为undefined
在Vue中,当使用箭头函数或者在watch选项中使用字符串形式的处理函数时,this指向会变为undefined。这是因为箭头函数没有自己的this,会继承父级作用域的this,而在watch选项中使用字符串形式的处理函数时,Vue会将其转换为函数,并将其作为内部函数的参数传递,导致this指向丢失。
为了解决这个问题,可以使用函数形式的处理函数,或者在箭头函数中使用外部的this变量。例如:
```
watch: {
value: function(newVal, oldVal) {
// 在函数中使用this指向Vue实例
console.log(this);
}
}
```
或者
```
watch: {
value: (newVal, oldVal) => {
// 在箭头函数中使用外部的this变量
console.log(this);
}
}
```
阅读全文