问题背景

在vue中使用axios做网络请求的时候,会遇到this不指向vue,而为undefined。

如下图所示,我们有一个 login 方法,希望在登录成功之后路由到主页,但通过 this.$router 获取路由器出错。

Vue笔记:使用 axios 中 this 指向问题

解决方案

使用箭头函数替代普通函数,ES6中的箭头函数 “=>” 内部的 this 属于词法作用域,由上下文确定(也就是由外层调用者vue来确定)。

改成如下图所示,我们看到 this.router 已经正确的返回了路由器对象。

Vue笔记:使用 axios 中 this 指向问题

so, 遇到类似问题的朋友们,箭头函数用起来。

相关文章:

  • 2018-01-16
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-03
猜你喜欢
  • 2022-12-23
  • 2022-01-09
  • 2022-12-23
  • 2021-11-01
  • 2022-12-23
相关资源
相似解决方案