扫码关注官方订阅号
ringa_lee
生命周期函数中的this都是指向Vue实例的,如你的代码所示,在函数beforeMount中,如果要在setTimeout依然使用到执行Vue实例的this,那么最好是箭头函数。
在文档中:vm.$watch('a', newVal => this.myMethod())
vm.$watch('a', newVal => this.myMethod())
本来这样写vm.$watch('a', function(){this.myMethod()}); //this指向VUe实例
vm.$watch('a', function(){this.myMethod()}); //this指向VUe实例
这样使用箭头函数的话,this就指向Vue实例了,而是执行你的上下文中的this。所以特别提示。
()=>{} 等价于 function(){}.bind(this);
()=>{}
function(){}.bind(this)
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
生命周期函数中的this都是指向Vue实例的,如你的代码所示,在函数beforeMount中,如果要在setTimeout依然使用到执行Vue实例的this,那么最好是箭头函数。
在文档中:
vm.$watch('a', newVal => this.myMethod())本来这样写
vm.$watch('a', function(){this.myMethod()}); //this指向VUe实例这样使用箭头函数的话,this就指向Vue实例了,而是执行你的上下文中的this。所以特别提示。
()=>{}等价于function(){}.bind(this);