在vue中箭头函数没有自己的this,所以,当箭头函数中有this的时候他会往外找,从而确定它的this的值
vm.$watch('firstName',{
immediate:true, //若immediate为true则handler在初始化时,就会调用一次,以后就看firstName的改变了
handler(newValue,oldValue){
setTimeout(()=>{ //此处定时器的回调一定要写箭头函数
this.fullName = newValue + '-' + this.lastName
},1000)
}
})
setTimeout:一定要写成箭头函数,不能写成function的普通函数,因为普通的函数中的this会是window,但是箭头函数的this回往外找,找到handler,handler的this是vm的实例对象调用的
版权声明:本文为wanghuohuo1998原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。