axios的两种请求方法

第一种写法

js 复制代码
axios
      .get("http://geek.itheima.net/v1_0/channels")
      .then((response) => {
        console.log(response.data.data.channels);
        setDataList(response.data.data.channels);
        console.log("dataList", dataList);
      })
      .catch((error) => {
        console.err("error", error);
      });   

第二种写法

js 复制代码
 async function getList() {
      // axios请求
      const res = await axios.get("http://localhost:3004/list");
      
    }

区别

这两种 Axios 的用法之间有几个区别:

  1. Promise vs Async/Await:

    • 第一种用法是使用了 Promise 的链式调用方式,通过 .then().catch() 处理异步操作的结果和错误。
    • 第二种用法是使用了 async/await,利用 await 关键字等待 Promise 对象的解决。这种写法更简洁直观,更容易理解和维护。
  2. 数据处理:

    • 第一种用法在获取数据后,直接在 .then() 方法中处理数据,例如通过 console.log() 输出、将数据设置到组件的状态中等。
    • 第二种用法将数据获取操作封装在了一个异步函数中,并使用 await 关键字等待数据的返回。这种写法使得代码更加模块化,易于复用。
  3. 错误处理:

    • 在第一种用法中,错误处理通过 .catch() 方法捕获,并处理错误情况。
    • 在第二种用法中,错误处理可以使用 try/catch 语句来捕获错误。

综上所述,虽然两种写法都可以实现相同的功能,但是第二种 async/await 的写法更加简洁、易读,并且可以更好地处理异步操作中的错误。

相关推荐
惊鸿一博16 分钟前
图标加载方式_zeroIcon_是否加前缀mdi
开发语言·前端·javascript
2501_9400417429 分钟前
前端工程化进阶:5个高交互与可视化项目提示词
前端
你很易烊千玺29 分钟前
JS 异步 从零讲(大白话 + 真实场景 + 可运行案例)
前端·javascript·vue.js
华洛2 小时前
讲讲如何在传统产品中挖掘AI需求
javascript·产品经理·产品
why技术2 小时前
AI Coding开始进入第四个时代,我还没上车呢!
前端·人工智能·后端
大家的林语冰3 小时前
CSS 已死?DOM 性能黑洞!Pretext 排版革命让你在文本间跳舞,没有 DOM 也能纵享丝滑~
前端·javascript·css
vipbic3 小时前
我也该升级了,陪伴了我7年的博客
前端
Lee川4 小时前
RAG 实战:从一篇掘金文章出发,拆解检索增强生成的全链路
前端·人工智能·后端
Lee川4 小时前
MCP 高德地图实战:当 AI 学会使用工具,一个协议如何重塑大模型的行动边界
前端·人工智能·后端
ZC跨境爬虫4 小时前
跟着 MDN 学CSS day_14:(尺寸调整技能测试与实战解析)
前端·css·ui·html·tensorflow