vue+axios在页面切换时中断请求怎么实现

这次给大家带来vue+axios在页面切换时中断请求怎么实现,实现vue+axios在页面切换时中断请求的注意事项有哪些,下面就是实战案例,一起来看一下。

如下所示:

Vue.prototype.$ajax=axios; const CancelToken = axios.CancelToken;let cancel;let cancelAjaxText = '中断成功';Vue.prototype.post = function(url,data,loading){ var ajax = Vue.prototype.$ajax({   method: 'post',   url:url,   data: data,   cancelToken: new CancelToken(c => { //强行中断请求要用到的   cancel = c   })  }).then(res =>res.data,res=>{ //中断请求和请求出错都会走这里,我这里用 cancelAjaxText 来区别  if(res.message == cancelAjaxText){   return {status : false,msg:cancelAjaxText}  }else{  this.$confirm('登录过时,是否重新登录', '提示', {   confirmButtonText: '确定',   cancelButtonText: '取消',   type: 'warning'  }).then(() => {   window.location.href = Vue.prototype.url_head + '/';  }).catch(() => {       });  }  }) return ajax;};

登录后复制

接入 axios ,在POST方法里加入 cancelToken 数据,在上面else中,中断请求和请求出错都会走那里,所以用一个msg来识别(因为接口返回中也有一个msg,统一一下);

以下是 中断请求的方法,放在 路由切换的监听 router.beforeEach 中 ,cancel 是中断的方法,在post 的 cancelToken 里面拿出来的

Vue.prototype.cancelAjax = function(){ //切换页面强行中断请求 router.beforeEach中用到  if(cancel){   cancel(cancelAjaxText);  } }

登录后复制

router.beforeEach((to, from, next) => {  Vue.prototype.cancelAjax()   next(); });

登录后复制

调用post

   this.post(this.ajaxUrl + 'getCrTree',{     devAddr : this.changeData.devAddr,     innerId : this.changeData.innerId,    }).then(ret=>{     if(ret.status){           }else{      this.msg(ret.msg);     }    })

登录后复制

相信看了本文案例你已经掌握了方法,更多精彩请关注【创想鸟】其它相关文章!

推荐阅读:

js数据类型的使用详解

JS的深浅拷贝使用步奏的详解

以上就是vue+axios在页面切换时中断请求怎么实现的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2773526.html

(0)
上一篇 2025年3月8日 13:52:22
下一篇 2025年3月8日 13:53:17

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • Vue怎么进行ajax请求公共方法

    这次给大家带来Vue怎么进行ajax请求公共方法,Vue进行ajax请求公共方法的注意事项有哪些,下面就是实战案例,一起来看一下。 为了减少代码的冗余,小编给大家推荐一篇介绍了决定抽离出请求ajax的公共方法的文章,供大家参考。 我使用了E…

    编程技术 2025年3月8日
    200
  • 原生JS怎么异步请求实现Ajax

    这次给大家带来原生JS怎么异步请求实现Ajax,原生JS异步请求实现Ajax的注意事项有哪些,下面就是实战案例,一起来看一下。 在前端页面开发的过程中,经常使用到Ajax请求,异步提交表单数据,或者异步刷新页面。 一般来说,使用Jquery…

    编程技术 2025年3月8日
    200
  • 实现ajax发送异步请求方法

    这次给大家带来实现ajax发送异步请求方法,实现ajax发送异步请求的注意事项有哪些,下面就是实战案例,一起来看一下。 ajax发送异步请求,供大家参考,具体内容如下 第一步(得到XMLHttpRequest) ajax其实只需要学习一个对…

    编程技术 2025年3月8日
    200
  • AFN封装网络请求详解

    这次给大家带来AFN封装网络请求详解,AFN封装网络请求的注意事项有哪些,下面就是实战案例,一起来看一下。 相信大家都知道,我们一般在一个项目中,网络请求都封装成一个单例,以确保整个项目的网络请求 Session 是同一个. 单例模式定义:…

    编程技术 2025年3月8日
    200
  • vue-resouce怎么设置请求头

    这次给大家带来vue-resouce怎么设置请求头,vue-resouce设置请求头的注意事项有哪些,下面就是实战案例,一起来看一下。 第一种:在Vue实例中设置 var vm = new Vue({ el:’#rrapp’, data:{…

    编程技术 2025年3月8日
    200
  • vue proxyTable怎么实现接口跨域请求调试

    这次给大家带来vue proxyTable怎么实现接口跨域请求调试,vue proxyTable实现接口跨域请求调试的注意事项有哪些,下面就是实战案例,一起来看一下。 在不同域之间访问是比较常见,在本地调试访问远程服务器。。。。这就是有域问…

    编程技术 2025年3月8日
    200
  • vue+axios制作登录请求拦截

    这次给大家带来vue+axios制作登录请求拦截,vue+axios制作登录请求拦截的注意事项有哪些,下面就是实战案例,一起来看一下。 当我们在做接口请求时,比如判断登录超时时候,通常是接口返回一个特定的错误码,那如果我们每个接口都去判断一…

    编程技术 2025年3月8日
    200
  • vue实现减少对服务器请求次数

    这次给大家带来vue实现减少对服务器请求次数,vue实现减少对服务器请求次数的注意事项有哪些,下面就是实战案例,一起来看一下。 下面看下通过vue提供的keep-alive减少对服务器的请求次数 VUE2.0中提供了一个keep-alive…

    编程技术 2025年3月8日
    200
  • Postman发送token请求

    这次给大家带来Postman发送token请求,Postman发送token请求的注意事项有哪些,下面就是实战案例,一起来看一下。 Postman模拟发送带token的请求方法 1)google浏览器中安装扩展程序Interceptor 2…

    2025年3月8日
    200
  • jQuery怎么取消ajax请求

    这次给大家带来jQuery怎么取消ajax请求,jQuery取消ajax请求的注意事项有哪些,下面就是实战案例,一起来看一下。 这里需要注意的是,在ajax请求未响应之前可以用xhr.abort()取消,但如果请求已经到达了服务器端,这样做…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论