面试前必会的promise封装ajax

前言:promise是es6提出的一种以同步的代码格式来处理异步请求的方式,它解决了回调地狱。在es8提出的async和await是比promise更加彻底的使用同步的方式处理了异步

不多说,直接上代码,我这里是在html文件中嵌入js文件进行编写的,并且使用npm下载了jquery之后进行引入,使用jquery封装好的$.ajax发送请求进行简单的使用封装。

<script src="./node_modules/jquery/dist/jquery.js"></script>
<script src="promise.js"></script>
<script>//使用promise封装ajax请求//参数options --- 对象function getData(options) {return new Promise((resolve, reject) => {//异步操作  发送ajax请求$.ajax({url: options.url,  //请求的url地址type: options.type || 'get', //请求方式 post/get 不传参默认getdata: options.data || null,  //请求的参数对象 不传默认空dataType: 'json',   //请求返回结果的数据类型success: resolve,  //成功了调用resolve函数fail: reject,   //失败调用reject函数})})}getData({url:'http://localhost:3000/post?pageIndex=1&pageSize=2&category=8'}).then(res => {console.log(res)}).catch(res => {console.log(res)})
</script>

注意:调用的时候接口要换成自己的哈


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部