vue中使用axios渲染异常慢

在使用axios请求数据时,数据返回特别慢,就算只是取数据 不渲染 首页加载也会很久。

请问 这是axios本身的问题嘛

clipboard.png

network 如图,内容并不大,但有时就会到3S,甚至有时候回7-8s,平均都得2s

阅读 12.1k
7 个回答

networkaxios没关系。

  1. 后端服务响应速度
  2. 网络的问题

补充关于Network的说明

看到问题还在讨论可能有必要补充一下。

  1. 如楼下所说,这里问题是content download时间太长,原因极有可能是xhr返回了304K的数据。如果不需要那么多数据,请做分页处理,如果需要这么多数据,可考虑把数据分片,通过Promise.all获取。
  2. 原答案列举的是比较常见的问题(返回比图片还大的数据说实话也不常见),附上其他影响时间的链接。

了解 Resource Timing

怎么个慢法呐,打开network看下

跟axios没关系吧,看看你的网速和后台是不是出了问题

axios封装的是XMLHttpRequest, 浏览器暴露给js进行ajax请求的操作能力。
渲染:指的是浏览器解析html, style sheet进行 layout & render -> composition,再进行绘制的过程。
axios跟渲染没有半点关系,跟你network里看到的时间线也没关系。axios只负责请求&响应接收数据的IO。
访问时间:时间长短主要跟这些因素有关:
是否在队列中stalled,
三次握手?初始化连接时间 initial connect,
服务器对数据的处理等待时间waiting,
数据下载content download

就是后端返回接口太慢了。

图片描述

content download的时间太长了,响应时间也不咋滴,可能是你的服务器带宽太小或者距离太远

axios跟渲染有什么关系。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题