两年经验前端带你重学前端框架必会的ajax+node.js+webpack+git等技术 第三章
创始人
2024-11-15 15:04:49

前端框架必会的(ajax+node.js+webpack+git)个人学习心得作业及bug记录 Day3

你好,我是Qiuner. 为帮助别人少走弯路和记录自己编程学习过程而写博客

这是我的 github https://github.com/Qiuner ⭐️

​ gitee https://gitee.com/Qiuner 🌹

如果本篇文章帮到了你 不妨点个吧~ 我会很高兴的 😄 (^ ~ ^)

想看更多 那就点个关注吧 我会尽力带来有趣的内容 😎

  • 官方笔记、资源在 https://pan.baidu.com/s/1Gd-ANtinWR7kh8TPTto10A&pwd=9987

  • 官方接口文档在 欢迎使用 - B站-AJAX和黑马头条-数据管理平台 (apifox.com)

    • 本篇文章比较水,值得一看的是XMLHttpRequest生命周期部分

文章目录

  • 前端框架必会的(ajax+node.js+webpack+git)个人学习心得作业及bug记录 Day3
  • XMLHttpRequest
    • 生命周期
      • 事件顺序
    • 在表面的查询参数
    • 带参数的请求
  • Promise
    • 基础使用
    • Promise三种状态
    • 小案例
  • 使用XML和Promise做一个简单的axios
    • 实现支持查询参数传递
    • 增加封装请求体功能
  • 天气预报案例
    • 数据回显部分

XMLHttpRequest

  • 静态网页,只有一两个地方需要使用请求来进行前后端交互的时候,使用XML可以实现开发包少的情况

image-20240708214004495

image-20240708214347654

image-20240708223050493

image-20240708223346601

生命周期

事件顺序

  1. readystatechange:当 readyState 属性变化时触发,可能会多次触发。
  2. progress:在数据传输期间周期性地触发,表示数据正在传输。
  3. loadstart:在请求开始时触发。
  4. abort:如果请求被取消时触发。
  5. error:如果请求失败时触发(例如,网络错误)。
  6. load:在成功接收到响应数据时触发。
  7. timeout:如果请求超时时触发。
  8. loadend:在请求完成时触发,无论请求是成功还是失败。

在表面的查询参数

需求

image-20240708223522357

image-20240709111234413

  • 其他的步骤没有什么区别,只是在参数拼接的时候,需要使用浏览器内置对象

带参数的请求

image-20240709111620163

  1. image-20240709112215386

Promise

基础使用

image-20240709112736832

  • 这个promise,用来管理请求成功或失败后要做什么

image-20240709113816165

  • 如果你不知道什么是异常,那可以这么想:异常就是停止程序的断点,那么,抛出异常理所应当为开发者觉得要在这里停止运行代码。
  • 在本例中,这里就是抛出一个错误

image-20240709145336980

Promise三种状态

image-20240709145647483

image-20240709145958271

  • 因为无法改变,所以会是resolve的以兑现状态

image-20240709150014420

小案例

image-20240709150154689

  • Promise和XML都没有自己来判断请求是成功还是失败的能力,因此,只需要将Promise当作报错工具,XML当作请求工作,原本代码的if、else当作判断工具,就能写出这个案例

image-20240709151327252

使用XML和Promise做一个简单的axios

image-20240709151511176

image-20240709151913562

  • 如此,就能实现。这里的config可以在使用的时候传递多个对象

实现支持查询参数传递

image-20240709152728721

image-20240709162809081

增加封装请求体功能

image-20240709162840687

image-20240709163656645

  • 封装axios这一节中,都是用原本的基础语法弄出来的

天气预报案例

image-20240709164005632

数据回显部分

  • 这部代码繁杂,没什么技术含量,建议直接复制

  • 可以捕捉页面元素,进行一个个替换,也可以将代码全部复制下来,使用${}替换

image-20240710091629313

image-20240710091649907

image-20240710092509531

  • 这案例老师讲的很详细了,没什么值得补充的,推荐直接看视频

AJAX-Day03-14.案例_天气预报_展示城市天气_哔哩哔哩_bilibili

相关内容

热门资讯

裸辞做“一人公司”,我后悔了 去年这个时候,一位以色列程序员正在东南亚旅行。他顺手把一个在脑子里转了很久的想法做成了产品,一个让任...
南京建成国内首个Pre-6G试... 4月21日,2026全球6G技术与产业生态大会在南京开幕。全息互动技术展台前,一名远在北京的工作人员...
超梵求职受邀参加“2025抖音... 超梵求职受邀参加“2025抖音巨量引擎成人教育行业生态大会”,探讨分享优质内容传播,服务万千学员。 ...
摩托罗拉Razr 2026(R... IT之家 4 月 22 日消息,摩托罗拉宣布新一代 Razr 折叠手机将于 4 月 29 日在美国发...
库克卸任,特纳斯领航:苹果新纪... 苹果首席执行官蒂姆·库克将卸任,硬件工程主管约翰·特纳斯将接任,苹果公司今天宣布此事。 库克将在夏季...