vue浏览器返回监听怎样实现?步骤是什么?
发布时间:2022-03-24 14:22:41 所属栏目:语言 来源:互联网
导读:我们在做分享页面的时候,会需要使用到vue浏览器返回监听,这样可以实现用户分享完页面之后,回退按钮返回到首页功能,达到实现增加访问量的目的。但是vue浏览器返回监听具体要怎么做呢?下面我们一起来了解一下实现步骤。 具体步骤如下: 1、挂载完成后,判
我们在做分享页面的时候,会需要使用到vue浏览器返回监听,这样可以实现用户分享完页面之后,回退按钮返回到首页功能,达到实现增加访问量的目的。但是vue浏览器返回监听具体要怎么做呢?下面我们一起来了解一下实现步骤。 具体步骤如下: 1、挂载完成后,判断浏览器是否支持popstate mounted(){ if (window.history && window.history.pushState) { history.pushState(null, null, document.URL); window.addEventListener('popstate', this.goBack, false); } }, 2、页面销毁时,取消监听。否则其他vue路由页面也会被监听 destroyed(){ window.removeEventListener('popstate', this.goBack, false); }, 3、将监听操作写在methods里面,removeEventListener取消监听内容必须跟开启监听保持一致,所以函数拿到methods里面写 methods:{ goBack(){ this.$router.replace({path: '/'}); //replace替换原路由,作用是避免回退死循环 } } 附:popstate用来做什么的? popstate的怎么用? HTML5的新API扩展了window.history,使历史记录点更加开放了。可以存储当前历史记录点pushState、替换当前历史记录点replaceState、监听历史记录点popstate。 pushState、replaceState两者用法差不多。 使用方法: history.pushState(data,title,url); //其中第一个参数data是给state的值;第二个参数title为页面的标题,但当前所有浏览器都忽略这个参数,传个空字符串就好; //第三个参数url是你想要去的链接; replaceState用法类似,例如:history.replaceState("首页","",location.href+ "#news"); (编辑:信阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |