首页 > 编程知识 正文

uniapp请求封装,vue项目loading效果

时间:2023-05-03 19:59:23 阅读:11150 作者:4642

键码如下

完整的代码如下。

说明:在请求侦听中,config的loadingHide和loadingText都是请求实例传递的参数

importaxiosfrom ' axios ' importcookiesfrom ' js-cookie ' importrouterfrom ' @/router ' importqsfrom ' QS ' import { clear const http=axios.create ({ base URL : window.site _ config [ ' API URL ' ],timeout: 1000 * 180,with credentials 33330 //当前请求的数量functionshowloading (数据) if ) loadingcount===0) loading instance=loading.service ) lock3360true,} loading functionhideloading ((loading count-- if ) loadinginstanceloadingcount===0) { loadingInstance.close ) loadinginstance /根据要求loadingshowloading (config.loading text ) } config.headers [ ' accept-language ' ]=cooodig ' zh-cn ' config 默认参数var defaults={} //缓存防止GET请求默认_t参数if(config.method==='get ' ) config.params={ . config . } . {'_t':newdate(.gettime ) }}if(isplainobject ) config.Params ) { config.params={ . defaults . }/x-www-form-urlencoded/. test (config.headers [ ' content-type ' ] ) config.data=QS.stringify ) config errororor response.config.loadinghide(/根据要求,loading hideLoading ) ) if(response.data.code===401|| response.data ) )必须隐藏router.replace ({ name : ' log in ' } ) returnpromise.reject ) response.data.msg error={ iii } error.config.loadinghide (/根据要求,loading hideLoading ) }console.error(error ) return promise.rejing

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。