两年经验前端带你重学前端框架必会的ajax+node.js+webpack+git等技术 Day3

Qiuner 2024-07-11 10:03:04 阅读 100

前端框架必会的(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生命周期部分

XMLHttpRequest

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

image-20240708214004495

image-20240708214347654

image-20240708223050493

image-20240708223346601

生命周期

事件顺序

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

在表面的查询参数

需求

image-20240708223522357

image-20240709111234413

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

带参数的请求

image-20240709111620163

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



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。