前端——浅析vue中this指向问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前端——浅析vue中this指向问题相关的知识,希望对你有一定的参考价值。

参考技术A 从网上的许多大神贴中可以了解到this所指的对象并不是固定的,他会根据上下文而发生变化。

根据VUE官方文档给出的解释是在Vue所有的生命周期钩子方法(如created,mounted, updated以及destroyed)里使用this,this指向调用它的Vue实例,即(new Vue)。在普通函数中,this指向调用它对象。

在箭头函数中,this指向的是箭头函数本身

一般我们用const that = this 来保存当前this的状态,比如当前指向的是window, 那么保存this状态以后,在函数中用that即可表示指向window。

this是如何产生的?浅析一下this的指向问题

 

this的产生:一个函数创建时就会产生一个this对象,或者说函数执行时就会产生一个this对象

 

    this的指向

         this指向直接调用它的对象。

         函数的回调函数中的this指向window

 

    this指向的改变

             bind(this):可以改变匿名函数内部的this指向  

             call(this):函数调用时可以改变this指向;

             apply(this):函数调用时可以改变this指向;

 这里要注意的是

        箭头函数没有this,箭头函数中的this继承父级而来。

        箭头函数无法通过bind(),call(),apply()改变this的指向。

以上是关于前端——浅析vue中this指向问题的主要内容,如果未能解决你的问题,请参考以下文章

vue 中的this问题

Vue--记录各种this的指向

浅析js之this --- 一次性搞懂this指向

vue这里的this指向哪里

vue使用axios中 this 指向问题

JavaScript this浅析