Vue-系统登录进入首页后禁用浏览器返回键

解决方法

mounted() {
  history.pushState(null, null, document.URL)
  window.addEventListener('popstate', this.goBack, false)
},
destroyed() {
  // 清除popstate事件 否则会影响到其他页面
  window.removeEventListener('popstate', this.goBack, false)
},
methods: {
  goBack() {
    history.pushState(null, null, document.URL)
  },
},

history.pushState(state, title, url)

state: 状态对象可以是任何可以序列化的对象。
title: 当前大多数浏览器都忽略此参数,尽管将来可能会使用它。
url: 新历史记录条目的 URL 由此参数指定。如果未指定此参数,则将其设置为文档的当前 URL。

popstate

当活动历史记录条目更改时,将触发 popstate 事件。
需要注意的是调用 history.pushState() 或 history.replaceState() 不会触发 popstate 事件。只有在做出浏览器动作时,才会触发该事件,如用户点击浏览器的回退按钮(或者在 Javascript 代码中调用 history.back() 或者 history.forward() 方法)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值