解决vue前端控制器中出现this is undefined的问题
- 出现问题的代码。
getAllLog1(){
this.$http({
method: "get",
url: "/getAllog1.php",
})
.then(function (response){
this.tableData1=response.data;
})
.catch(function (error) {
console.log(error);
});
},
- 原因:匿名函数的this指向运行时实际调用该方法的对象,无法在编写函数时确定
- 解决方法:使用箭头函数回调数据,箭头函数内部的this是词法作用域,在编写函数时就已经确定了,由上下文确定,而不是指向调用该方法的对象。
- 修改代码如下:
getAllLog1(){
this.$http({
method: "get",
url: "/getAllog1.php",
})
.then(response =>{
this.tableData1=response.data;
})
.catch(function (error) {
console.log(error);
});
},