我有一个请求获取一些数据并将其添加到变量
当我使用时:
.then(function(response) {
this.persons = response.data;
});
它不会将response.data
分配给this.persons
,但是当我执行以下操作时:
.then(response => this.persons = response.data);
它指定它使用得很好。请参阅js小提琴:
答案 0 :(得分:3)
正如我已经解释过的那样here,arrow syntax并没有绑定它自己的this,arguments,super或{{3 }}。箭头函数始终为new.target。这些函数表达式最适合非方法函数。
anonymous块内的this
范围和当前正在执行的函数function()的更改范围,而使用箭头功能时,this
仅指当前正在执行的函数。