本文是我在我们团队内部“现代 JavaScript 突击队”学习小组分享的文章,第三期学习内容为“阅读源码”系列,我将我的学习成功整理成文章输出,希望能够和大家一起温故知新!
“现代 JavaScript 突击队”学习总结:《“现代 JavaScript 突击队”知识集》
第三期学习目标是“阅读源码”,从以下库中任选一个进行阅读学习:
- BetterScroll —— 学习目的:插件化架构 + 前端工程化 + TS
- Axios ——学习目的:TS 泛型、类型扩展及拦截器的实现
- Overnight —— 学习目的:TS 装饰器的知识及应用
本文是我这一期知识总结的第二篇文章,有兴趣可以阅读下第一篇《我为 Express 开了外挂》 。
另外,强烈推荐阿宝哥源码阅读相关的文章,值得精读:
一、背景介绍
最近 Leo 在给实习生 Robin 进行代码 Review 的时候,看到很多地方都这么写:
axios({
method: "GET",
url: "....",
headers: {
"token": token
}
}).then((res) => {
// ...
}).catch(function (error) {
// ...
});
Robin 在业务中使用 Axios 请求库发请求时,都手动为请求头添加 token
字段,类似这样:
二、Axios 简介
相信做前端开发的小伙伴应该对 Axios 请求库挺熟悉的。
Axios 是一个易用、简洁且高效的 HTTP 库,支持 node 端和浏览器端,支持 Promise,支持丰富的配置项。
(图:请求拦截器的使用)