mui ajax 封装成Promise ,可以优雅的使用 async/await

最近在做app的时候,由于后面的接口越来越多,这就涉及到接口的封装了
我自己的话封装了一个mui的ajax请求,执行都没问题,接口也能走通。就是
在页面上获取接口数据的时候,返回undefined。

分析原因:
ajax默认是异步请求,所以当我们在打印的时候,就会是undefined。这种情况的
话,就需要用到promise了。

这是原创作者的链接,分享给大家:
https://ask.dcloud.net.cn/article/38776

上源码
新建js文件

       const { ajax } = mui  
       function getAjax(url, data, methods) {
           return new Promise((res, rej) => {
               mui.ajax(url, {
                   data: data,
                   dataType: 'json', // 服务器返回json格式数据
                   type: methods, // HTTP请求类型
                   timeout: 10000, // 超时时间设置为10秒;
                   headers: {
                       'Content-Type': 'application/json',
                       'Authorization': getCookie('token')
                   },
                   success: function(data) {
                       res(data) 
                   },
                   error: function(xhr, type, errorThrown) {
                       rej(errorThrown)  
                   }
               });
           })
       }

页面上调用

  let vehicleNo = getAjax("你的url", {}, "post")
        vehicleNo.then(myData => {
        //myData即为获取到的数据
        console.log(myData);
    });

以上就是mui ajax 封装成Promise解决方法了
如果这篇文章对你有帮助,或者在进行中遇到其他问题,欢迎评论区留言出来。
我们一起探讨~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。