前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >axios 浏览器内存泄露问题解决

axios 浏览器内存泄露问题解决

作者头像
JadePeng
发布2020-11-13 11:08:16
1.3K0
发布2020-11-13 11:08:16
举报

现象

业务页面,频繁切换下一条,内存飙涨,导致卡顿,之前怀疑是音频播放器的锅,修改后问题依旧,于是排查网络请求。

到axios issues搜索,发现memory leaks帖子不少,典型的在这里Axios doesn't address memory leaks?:

这里提到0.19.2 版本没有问题,但是升级到0.20.0后,出现问题。

两种解决方案:

  • 降级到0.19.2
  • 在新版本里,不要直接使用axios,而是先创建一个instance
代码语言:javascript
复制
const axios = axios.create({...}) // instead of axios.get(), post(), put() etc.

排查业务代码,发现每次请求都是创建一个 instance,抛开版本问题,每次创建实例肯定会存在内存问题,最好还是先创建个single instance,后面复用:

代码语言:javascript
复制
import axios, { AxiosRequestConfig, AxiosResponse } from 'axios'

// 创建一个实例
const axiosInstance = axios.create() 

  save(parameters: {
    'data': ResultSaveParam,
    $queryParameters?: any,
    $domain?: string
  }): Promise<AxiosResponse<ApiResult>> {
     ....
	 // 使用axiosInstance
    return axiosInstance.request(config)
  }

作者:Jadepeng 出处:jqpeng的技术记事本--http://www.cnblogs.com/xiaoqi 您的支持是对博主最大的鼓励,感谢您的认真阅读。 本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-11-04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 现象
  • 两种解决方案:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档