React:网络工具库,神操作,实战案例

axios.all([

axios({

url: “http://demo.itlike.com/web/xlmc/api/homeApi/categoriesdetail/lk001”

}),

axios({

url: “http://demo.itlike.com/web/xlmc/api/homeApi/categoriesdetail/lk002”

})

]).then(axios.spread((res1, res2) => {

console.log(res1);

console.log(res2);

}));

④ 常用的配置选项

在组件中配置当前axios的根路径的话,直接在componentDidMount()钩子中进行配置

  1. 请求地址

javascript url: '/itlike'

  1. 请求类型

method: ‘get’

  1. 请求根路径

baseURL: ‘http://www.itlike.com’

当前组件全局配置

componentDidMount() {

// 当前组件axios配置

axios.defaults.baseURL = ‘http://demo.itlike.com/web/xlmc/api’

}

  1. 请求前数据处理

transformRequest: [function (data, headers) {

return data;

}],

  1. 请求后数据处理

transformResponse: [function (data) {

return data;

}],

  1. 自定义请求头

headers: {‘X-Requested-With’: ‘XMLHttpRequest’}

  1. URL查询对象

params: { ID: 12345 }

  1. URL查询对象序列化

paramsSerializer: function (params) {

return Qs.stringify(params, {arrayFormat: ‘brackets’})

}

request body

data: {

firstName: ‘Fred’

}

  1. 超时设置

timeout: 1000ms

  1. 跨域是否带token

withCredentials: false

  1. 自定义请求处理

adapter: function (config) {

/* … */

}

  1. 身份验证

auth: {

username: ‘janedoe’,

password: ‘s00pers3cret’

}

  1. 响应数据规则

responseType: ‘json’

‘arraybuffer’, ‘document’, ‘json’, ‘text’, ‘stream’

axios.defaults.baseURL = ‘https://api.example.com’;

axios.defaults.headers.post[‘Content-Type’] = ‘application/x-www-form-urlencoded’;

import axios from ‘axios’

export default function ajax(url = ‘’, params = {}, type = ‘GET’) {

// 0. 变量

let promise;

// 1. 返回Promise

return new Promise((resolve, reject) => {

// 1.1 判断请求类型

if (type.toUpperCase() === ‘GET’) { //GET

promise = axios({

url, params

})

} else if (type.toUpperCase() === ‘POST’) { // POST

promise = axios({

method: ‘post’,

url,

data: params

})

}

// 1.2 处理结果并返回

promise.then((response) => {

resolve(response);

}).catch((error) => {

reject(error);

})

})

}

⑦ 使用axios拦截器

  1. 概念:axios提供了拦截器,用于在每次发送请求前或者得到响应后,进行对应的处理。共4个拦截① 请求成功② 请求失败③ 响应成功④ 响应失败

  2. 实操

axios.interceptors.request.use((config) => {

console.log(config);

小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注:前端)
img

最后

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

❤️ 谢谢支持,喜欢的话别忘了 关注、点赞哦。

10834271493)]
[外链图片转存中…(img-ehmkSkd0-1710834271493)]
[外链图片转存中…(img-BGrDU5CO-1710834271493)]

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注:前端)
[外链图片转存中…(img-FKTS5jg6-1710834271493)]

最后

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

❤️ 谢谢支持,喜欢的话别忘了 关注、点赞哦。

前端校招面试题精编解析大全

  • 9
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值