添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
寂寞的日光灯  ·  Mono interpreter on ...·  2 年前    · 
烦恼的上铺  ·  DataGrip 与 Azure ...·  2 年前    · 
好帅的砖头  ·  JavaScript 之 ...·  2 年前    · 
首发于 量化

为什么vue组件的生命钩子里不能使用箭头函数

箭头函数的this会向上搜索作用域,并指向那个作用域。

而vue组件的声明钩子,例如methods:{ func1():{},func2():{}},本质上来说methods是一个属性,或者变量,没有作用域,而data(){}是一个函数,是有自己作用域的,因此在methods里使用钩子函数时,this无法访问data的作用域。

因为 箭头函数 存在一个特性就是其中不存在this,会向上一层作用域中进行查找,其中上一层作用域必须为函数作用域或者是全局作用域

js里作用域一般就是函数的作用域和全局作用域。实际上我对js里的作用域也还是一知半解

参考链接:

(129条消息) Vue中为什么不能使用箭头函数来定义methods函数(详解)_佐宗的博客-CSDN博客_method为什么不能用箭头函数

(129条消息) vue中methods中的方法为什么不能使用箭头函数,其中的this指向什么?_卖菜的小白的博客-CSDN博客_method 为什么不能使用箭头函数

Vue-06-生命周期-箭头函数 - 简书 (jianshu.com)

函数参数作用域&this指向 - 掘金 (juejin.cn)

编辑于 2022-06-24 20:57

文章被以下专栏收录