写这篇之前,感悟很深,这里记录下:
这里再次给自己提示下,虽然我在这么做。我想没有什么比官方的文档说明更有说服力。要习惯从官方文档中提取信息。这才是成为强者的必要素质,而不是一味的用别人研究透了的技术,那样你和咸鱼搬运有什么差距。
但是借鉴别人的东西,又是成长必然过程,能做好的就是借鉴别人,一定要站在他更高的高度去分析东西。原理、过程、底层实现都要清楚。单纯的借鉴,你用完即忘,毫无意义。
Jquery Ajax:
在前面 https://blog.csdn.net/weixin_42603009/article/category/8670476 分类中我有大致写道ajax、fetch。关于他们的大致流程表示的还算清楚。
这里我补充一点内容:
就当前的技术浪潮而言,传统的Ajax也好、Jquery Ajax也好发展这么多年已经很完美了。但是它也有缺点,这是因为:
1.本身是针对MVC的编程,不符合现在前端MVVM的浪潮
2.基于原生的XHR开发,XHR本身的架构不清晰。
3.JQuery整个项目太大,单纯使用ajax却要引入整个JQuery非常的不合理(采取个性化打包的方案又不能享受CDN服务)
4.不符合关注分离(Separation of Concerns)的原则
5.配置和调用方式非常混乱,而且基于事件的异步模型不友好。
fetch: 是Jquery Ajax类似的,但是fetch纯js的,它提供了一个JavaScript接口,用于访问和操纵HTTP管道的部分,例如请求和相应,全局用fetch()方法做处理。
官方介绍:https://developer.mozilla.org/zh-CN/docs/Web/API/Fetch_API/Using_Fetch
axios:
但是关于axios没有介绍过,axios是在Vue2.0后推荐使用的,Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。
建议查看官方文档说明: https://www.kancloud.cn/yunye/axios/234845