我并不是专业的前端开发攻城狮,所以,这篇文章的水平,可能是比较低的,里面一些观点,可能都比较可笑。如果有疏漏或错误的地方,希望大家能指出来。如果文章的价值不大,也希望大牛能指点一二,在此先谢谢了。
在做实际开发过程中,由于后台只提供接口,不管是android、ios还是H5开发,都是通过调用同一套后台接口去获取数据,android和ios是通过各自的系统提供的http请求方法去做数据请求的。而H5端,我是采用了ajax的方法来实现加载的,抛弃了类似jsp这样的后端渲染方案。我采用的是jquery提供的ajax方法来实现数据加载的。jquery提供的ajax方法,已经非常简洁实用了。但为何还要做二次封装呢?
在实际项目过程中,刚开始,我并没有这种想法,我认为jquery提供的ajax方法已经够简单了。但项目大概进展了一半的时候,突然发现,写的ajax方法,代码挺多都是重复的,但这个时候,并没有意识到我应该做些什么。直到一天,后台接口发现所有的请求,都缺少一个关键参数,这个时候,我的H5端的所有的ajax请求,都得一个一个手动去添加参数。没办法,只能一个一个手动去添加了。但是,这个时候我就在考虑一个问题,假如后期后台又发现缺少一个关键参数,我该怎么办?难道让我再一个一个请求方法去手动添加吗?那还不得累死我啊?另外,如果有个疏漏,漏掉一两个请求方法,那回头排查问题,所需的时间,也不少。能不能想个简单的办法,如果有修改,我改动一处,所有的请求都同步修改过来呢?这个时候,我想起了我在做android开发中,经常会做一些二次封装,也许各个项目不同,但一个项目中,我只需要在一个地方控制一下,就可以做到全局同步修改过来。基于这个想法,我想尝试一下,可以不可以对ajax做一下二次封装。
思路是有了,但我之前并没有做过H5端的开发,至于这个思路是否可行,心里还没有底。但如果不尝试一下,又怎么知道可行不可行呢?大不了就是浪费一些时间罢了。在这个想法下,于是开始了我的ajax二次封装之路。
当然,既然是基于jquery的ajax方法的二次封装,其主要内容还是jquery的ajax方法