一,问题

在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()
    }
  }

在这里插入图片描述


Logo

前往低代码交流专区

更多推荐