在ts时使用axios请求类型定义增加属性
1.需求
在后台请求中有一些请求数据量比较大无法一下返回,需要增加loading动画,为了方便控制想在请求的时候增加一个参数isLoading,默认关闭,传真值时开启动画。这便需要拓展axios中增加个性化参数配置。但是如何进行类型的定义呢?
2.操作
如上,在做左边增加了isLoading参数,代码分析后,我们知道要在AxiosResponse中增加属性
好,增加属性及其类型定义,解决。
3.优化
一阵子后发现新问题,该类型定义文件是在依赖node_modules文件中,也就是每次重新拉代码运行都得找到这个文件去加这个东西,有没有新的方式可以加一次就可以呢?
在全局类型定义中重新定义 AxiosRequestConfig 即可
1 2 3 4 5 6 7 8 9 | export { } declare module 'axios' { export interface AxiosRequestConfig { /** * @description 设置为true,则会在请求过程中显示isLoading动画,直到请求结束才消失 */ isLoading?: boolean; } } |
由于ts自带声明合并,因此我们使用的时候,AxiosRequestConfig 已经是axios的类型定义和重新类型定义的合二为一了。去掉原先的依赖文件的类型定义
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET10 - 预览版1新功能体验(一)