网站首页 > 文章教程 正文
当vue与axios直接在html文件中使用的时候,位于axios的请求中的this指向并不是指向vue,而是指向window,如果在请求中直接用this获取data中的数据会出现undefined的问题,解决思路是将ES5的函数语法更换为箭头函数即可解决此问题,深层的原因就得深入去了解箭头函数和普通函数之间的区别了!
案例:
new Vue({
el: '#app',
data:{
carousels: [],
},
created() {
axios.get('/api/banners/').then(function (response) {
// 这里的this.carousels是undefined,因此上下边的赋值是不起作用的
this.carousels = res.data
}).catch(function (error) {
console.log(err)
});
},
})
以上案例可以发现在axios中使用this获取data中的值是获取不到的,这就是this的指向问题造成的,他不是指向vue,只需要修改如下,将function函数改为箭头函数即可解决!
修改代码如下:
new Vue({
el: '#app',
data:{
carousels: [],
},
created() {
axios.get('/api/banners/').then(res => {
this.carousels = res.data
}).catch(err => {
console.log(err)
});
},
})
到此问题就解决了!
猜你喜欢
- 2024-11-10 多重 Catch 块(多个catch块只会执行一个)
- 2024-11-10 Java线程的概念,各种状态以及使用方式
- 2024-11-10 老版本iWatch 升级到 watchOS9.2,建议别用Betas啦
- 2024-11-10 catch 相关的短语动词(关于catch的短语词组)
- 2024-11-10 情人节脱单秘诀,程序员表白的情话大盘点!| CSDN 博文精选
- 2024-11-10 关于catch的短语,你知道多少?(关于catch的短语词组)
- 2024-11-10 流程控制-TryCatch语句(5-9)-C#编程零基础到入门学习
- 2024-11-10 38.JavaScript:try...catch异常处理
- 2024-11-10 天呐,你竟然还在用 try–catch-finally
- 2024-11-10 基于MySql数据库+Express的API接口服务(含服务器部署)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- ios5.1.1下载 (61)
- 组态王图库下载 (72)
- eclipse3.7下载 (60)
- win7蓝牙5.0驱动 (68)
- win7nvme补丁 (63)
- typora哪个版本不收费 (69)
- 代码随想录pdf (62)
- freecommander (60)
- lambdawrapper (76)
- linuxjdk1.8安装教程 (82)
- su一键封面插件 (59)
- 威纶通触摸屏官网下载 (62)
- netframework4.7.2 (63)
- icmp报文格式 (69)
- spire.presentation (79)
- burpsuite中文版 (63)
- 网页批量打开 (64)
- android源码在线 (63)
- cad图框模板免费下载 (62)
- sqlserver连接工具 (63)
- 文库下载工具 (67)
- mat内存分析工具 (67)
- javaisassignablefrom (60)
- ug自动出图软件 (62)
- fidder下载 (61)
本文暂时没有评论,来添加一个吧(●'◡'●)