在vue开发中会遇到methods方法里有一个函数嵌套另一个函数,最内层函数this取不到data数据,该怎么解决?
在vue的methods方法中两个函数互相嵌套,最内层函数this取不到data数据。(1)给最外层函数this重新赋值给一个变量。
·
一,问题
在vue的methods方法中两个函数互相嵌套,最内层函数this取不到data数据
二,原因
this的指向问题
三,解决方法
(1)给最外层函数this重新赋值给一个变量
methods: {
/** 给最外层函数this重新赋值 */
t3() {
console.log('函数外',this.msgData); // codekey
let _this = this
let t4 = function() {
console.log('函数内',_this.msgData); // codekey
}
t4()
}
}
(2)使用箭头函数
methods: {
/** 箭头函数 */
t5() {
console.log('函数外',this.msgData); // codekey
let t6 = () => {
console.log('函数内',this.msgData); // codekey
}
t6()
}
}
更多推荐
已为社区贡献9条内容
所有评论(0)